能否从ASP.NET代码中检查客户端浏览器是否启用了JavaScript?
我希望在控件的PreRender或PageLoad上实现这一点,以便我可以更改它们的外观。
如有任何建议、解决方法等,将不胜感激。
能否从ASP.NET代码中检查客户端浏览器是否启用了JavaScript?
我希望在控件的PreRender或PageLoad上实现这一点,以便我可以更改它们的外观。
如有任何建议、解决方法等,将不胜感激。
Page.Request.Browser.EcmaScriptVersion将指示ASP.NET认为是正确的。这假设BrowserCaps是正确的。它确实给出了第一次的指示,可能相当接近。
编辑:我最初误解了问题(启用与支持)。您可以使用服务器端的BrowserCaps来筛选那些不支持JavaScript的UserAgent。然后在每个请求上使用一行脚本来确定是否通过cookie启用:
// let the server know JavaScript is enabled via session cookie
document.cookie = "js=1; path=/";
然后在服务器端检测是否存在:
HttpCookie cookie = HttpContext.Current.Request.Cookies.Get("js");
bool js = (cookie != null) && (cookie.Value == "1");