检测ASP.NET中禁用JavaScript的时间

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了检测ASP.NET中禁用JavaScript的时间相关的知识,希望对你有一定的参考价值。

在ASP.NET Web控件的Render方法中,我需要根据客户端浏览器上是启用还是禁用javascript来更改html的输出,

有没有人知道正确的咒语来解决这个问题?

答案

使用脚本检查是否启用了javascript的问题是,只有在脚本未运行后才能找到它。

一些解决方案尝试相反 - 他们使用javascript设置值,然后提供启用Javascript的控件,如果稍后检测到该值。但是,这有点像Firefox NoScript插件这样的javascript有时启用的工具。

一个更强大的解决方案是始终发送纯HTML兼容控件,然后在页面加载时运行javascript以添加正确的事件处理程序/额外的DOM元素/等。

但是我不知道这与ASP.NET方法对控件的适应性如何。

另一答案

如果未执行脚本,则noscript标记用于定义备用内容(文本)。

编辑:嗨Kieron,看看这个链接:Creating a Server Control for JavaScript TestingDetect if JavaScript is enabled in ASPX

另一答案

浏览器不会将Javascript可用性与请求进行通信。

我做过的一件事,虽然我不确定它是否适用于你的情况,是生成页面好像没有启用Javascript,然后有一些Javascript关闭HTML-only的东西并打开HTML-Javascript东西。

您还可以通过Javascript将第一页打到“phone home”,在会话中记录Javascript是否已启用。

另一答案

这是一种检查表单提交时间的方法。

http://www.4guysfromrolla.com/webtech/082400-1.shtml

我不认为有任何Request属性会告诉您何时首次请求页面。有一个属性会告诉您浏览器是否支持JS,但是如果启用了则不会。 See Here

另一答案

你需要做的就是这个。经过大量测试和深夜,我决定使用最简单的解决方案。将标签拖到页面顶部,并确保其显示为“在服务器上运行”。然后,对于Text属性,输入Text =“此网站需要Javascript”。那应该是最好的答案。 :d

以上是关于检测ASP.NET中禁用JavaScript的时间的主要内容,如果未能解决你的问题,请参考以下文章

使用 javascript 禁用 asp.net 单选按钮

使用 javascript 和 asp.net 启用和禁用按钮

使用 JavaScript 禁用 ASP.NET 验证器

如何在 ASP.NET MVC 4 Beta 中禁用 Javascript/CSS 缩小

asp.net 使用 Javascript 禁用/启用验证器

asp.net c#.net jquery / javascript 如何使用复选框启用或禁用 requiredfieldvalidator