我在javascript上做一些演示。我对一个文本输入上的onkeypress事件进行了调用,并检查它是否是“输入”键以自动提交表单。浏览器具有自动完成功能(我的是firefox),可以使用向上/向下箭头和回车键从下拉列表中进行选择。问题是,当输入文本被聚焦并显示自动完成时,您只需按Enter键选择自动完成项目,但它会自动同时提交表单。怎么避免这个?如何使用javascript从浏览器中检索自动完成元素?
答案 0 :(得分:1)
不允许。如果它应该在任何Web浏览器上完成,它可能被视为安全漏洞。
假设您的网站访问者试图搜索“p * rn”这样的关键字,那么您作为网站所有者能够知道该用户喜欢p * rn!。这只是一个小例子,可以显示您的请求可能存在的安全和隐私问题。
答案 1 :(得分:1)
任何浏览器都不会向程序提供自动填充信息。这将是一种窃取数据并因此成为安全威胁的方法。想象一下,我的程序希望窃取您的地址,所以当您访问我的页面时,我会保留一个地址文本框并获取您过去填写的所有地址值。
根据评论中的建议,您可以将自动填充设置为关闭以避免显示下拉列表。
这是一个链接How to Turn Off Form Autocompletion,其中包含有关此主题的说明。