如果在浏览器上启用Javascript,如何检测(使用.ASPX)

时间:2008-09-09 17:01:00

标签: javascript asp.net

我认为这可能是一种快速简便的方法来降低我们网站上的垃圾邮件形式。这个想法是(我已阅读)垃圾邮件发送者没有启用javascript运行。 (或者至少他们在不运行javascript的情况下访问您的网站。即,他们没有在IE或FF中浏览它。

我可以使用.asp或.aspx。

5 个答案:

答案 0 :(得分:7)

最简单的方法是通过javascript设置cookie并在回发时检查它。但是,如果你想减少垃圾邮件,你应该让浏览器执行一个简单的任务,需要执行javascript。请参阅Phil Haack的“Invisibile Captcha Validator”控件,该控件已包含在他的Subkismet库中:http://haacked.com/archive/2006/09/26/Lightweight_Invisible_CAPTCHA_Validator_Control.aspx

答案 1 :(得分:1)

在.net中,您可以使用Request.Browser.JavaScript来检测浏览器是否支持JavaScript。但是,用户可能仍然禁用了Javascript。检查Javascript是否已启用的一种丑陋方法是使用window.location重定向到page.aspx?jscript = true,然后检查Request.Querystring是否有该值。

答案 2 :(得分:1)

那么,您想强制用户使用JavaScript来使用您的网站吗?我宁愿只使用一个简单的Captcha。如果你不是一个大牌网站,你可以使用一些相对简单的Captchas。

这就是我们在网站上减少垃圾邮件的方式。

答案 3 :(得分:1)

说实话,您不需要使用服务器端语言来检测javascript,而且垃圾邮件发送者不一定不运行javascript。 (抱歉双重否定)你的目标是好的,但你的方法是错误的 - 按照我们的一些同行的建议实施CAPTCHA将是一个很好的方法来解决这个问题。

答案 4 :(得分:0)

我看到你接受了noscript答案,但你将如何使用它来打击垃圾邮件? noscript将允许您为没有JS的用户添加特殊内容,但除非您使用JS生成网站的其余部分,否则它仍可供没有JS的用户代理使用。

某种验证码仍然是最好的选择。最终,你试图让用户代理证明它是由人控制的,所以尽力使它证明实际的事实,而不是别的东西。视障人士的屏幕阅读器通常也没有Javascript,许多人从移动设备浏览都禁用了Javascript以加快速度。