Fer*_*min 9 javascript asp.net
是否可以检查客户端浏览器是否从ASP.NET代码启用了javascript?
我希望理想情况下在PreRender控件或PageLoad上执行此操作,以便我可以更改它们的外观.
任何建议,解决方法等将非常感激.
如果不做出后续请求,我不能这样做,我担心.
有一些解释可以通过在Google上进行搜索找到最多使用AJAX调用或通过某些javascript弹出的隐藏字段,如果禁用Javascript则无法运行.
如果你必须这样做,那么我会尝试在客户端的第一个请求中执行它,并保存一个cookie(或类似的东西),然后在后续请求中检查cookie的值.这假设用户不经常启用/禁用Javascript.您还可以在会话中存储值.
我希望有所帮助
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=/";
Run Code Online (Sandbox Code Playgroud)
然后检测存在服务器端:
HttpCookie cookie = HttpContext.Current.Request.Cookies.Get("js");
bool js = (cookie != null) && (cookie.Value == "1");
Run Code Online (Sandbox Code Playgroud)
一旦他们关闭浏览器,这个cookie就会消失.