我正在做一些关于 javascript 的演示。我在文本输入上注册了一个 onkeypress 事件,并检查它是否是自动提交表单的“输入”键。浏览器具有自动完成功能(我的是 firefox),可以使用向上/向下箭头和回车键从下拉列表中进行选择。问题是当输入文本被聚焦并显示自动完成时,您按下回车按钮只是为了选择自动完成项目,但它会同时自动提交表单。如何避免这种情况?如何使用 javascript 从浏览器中检索自动完成元素?
问问题
66 次
2 回答
1
这是不允许的。如果它应该在任何网络浏览器上完成,它可能会被视为一个安全漏洞。
假设您的网站访问者尝试搜索诸如“p*rn”之类的关键字,因此您作为网站所有者能够知道该用户喜欢 p*rn!。这只是显示您的请求可能存在的安全和隐私问题的一个小例子。
于 2012-12-16T14:26:37.910 回答
1
没有浏览器会向程序提供自动完成信息。这将是一种窃取数据的方式,因此会构成安全威胁。想象一下,我的程序想要窃取你的地址,所以当你访问我的页面时,我会保留一个地址文本框,并取走你过去填写的所有地址值。
正如评论中所建议的,您可以将自动完成设置为关闭以避免显示下拉菜单。
这是一个链接如何关闭表单自动完成,并对此主题进行了解释。
于 2012-12-16T14:26:47.143 回答