是否可以阻止用户使用地址栏提交表单

Is it possible to prevent the user from submitting a form using the address bar?

本文关键字:地址栏 提交 表单 用户 是否      更新时间:2023-09-26

我在网上搜索过,但并没有真正找到解决方案,所以我认为这是不可能的。为了进一步澄清,我仍然会问这个问题。

是否可以阻止用户使用地址栏提交表单?

例如:

javascript:document.forms[0].submit()

在Firefox中,在地址栏中键入以上内容没有任何作用,但在谷歌Chrome中提交的表单没有任何问题,没有运行我的验证。据我所知,这可能是webkit或谷歌Chrome的一个错误。真正尝试这种方法的人可能很少,但如果可能的话,这是一个令人讨厌的问题,我想解决。

这里有一个jsfiddle可以更好地解释我的问题(你必须将文本复制到一个空白的html文件中,并在本地打开它才能工作)

http://jsfiddle.net/b4DGj/9/

将文本复制到一个空白的html文件中,并在浏览器(最好是谷歌Chrome)中打开

类型:

javascript:document.forms[0].submit()

进入地址栏,您将立即被带到谷歌,而javascript函数不会被称为

Firefox什么都不做,Internet Explorer也不怎么做,谷歌Chrome会提交表单,尽管会带你去https://www.google.com/?#q=(由于某种原因决定抛出404错误)

不,真的不可能停止。你可以让它变得更难,但从来不会不可能四处走动。用户可以完全控制其客户端。在服务器端验证所有内容。

实际上,Chrome(在其默认配置中)会尝试查找您在地址栏上抛出的任何内容(这不是实际地址)。https://www.google.com/?#q=是谷歌的标准搜索查询。如果你进入设置区域->管理搜索引擎,你会发现不同搜索引擎的标准查询(如果你有多个)。

希望这能有所帮助。