我刚刚被要求阻止浏览器保存输入到特定表单字段的数据。自从我完成了web开发以来已经有好几年了,这是一个相对较新的功能。我能够找到表单字段属性autocomplete =“off”,但我似乎找不到任何说明哪些浏览器支持它的文档。有人能指出我在表格属性和浏览器兼容性图表的正确方向吗?
答案 0 :(得分:102)
请注意,所有主流浏览器都在向ignoring the attribute for password fields。
迈进我只能提供轶事证据,但我还没有遇到一个不尊重autocomplete="off"
的浏览器,这段经历包括:
我知道Greasemonkey脚本,可能是其他用户脚本,可以禁用autocomplete
设置。
我发现有几篇文章可能对您有用:
答案 1 :(得分:37)
密码管理员现在忽略主要浏览器中autocomplete
个字段的password
属性:
它仍然可以在表单字段上禁用autocomplete
,但不再影响密码管理器。
答案 2 :(得分:6)
自Chrome v34起,autocomplete="off"
现在默认会被忽略。
通过访问chrome://flags
http://news.softpedia.com/news/Chrome-34-Seeks-to-Save-All-Your-Passwords-436693.shtml
答案 3 :(得分:4)
如果你能够使用JavaScript和jQuery,你可以把它放在html的加载上:
$('#theform input').val('');
答案 4 :(得分:1)
除了Maxthon Browser我认为,它们在中国很有名,现在在全世界都有名。他们没有很好地对待Autotocomplete = off power。它不适用于他们。
答案 5 :(得分:1)
某些解决方案无法在现代浏览器中使用。
此处给出了另一个解决方案链接。适用于所有现代浏览器。
Input type=password, don't let browser remember the password
您可以在此给定的解决方案中使用 autocomplete =" off"
答案 6 :(得分:0)
事实上,在所有最新的浏览器中,用户名和密码字段都不会对AutoComplete = off做出反应。
答案 7 :(得分:0)
td;dr:要检查跨浏览器的兼容性,这里有一个官方的 MDN 文档,通过兼容性链接关闭自动完成 - https://developer.mozilla.org/en-US/docs/Web/Security/Securing_your_site/Turning_off_form_autocompletion
更长一点的答案:您的问题是因为 Chrome 的自动填充功能,这里是 Chrome 在此错误链接中对此的立场 - https://bugs.chromium.org/p/chromium/issues/detail?id=468153#c164
简单来说,有两种情况-
[CASE 1]:您的 input
类型不是 password
。在这种情况下,解决方案很简单,分为三个步骤。
name
属性添加到 input
name
不应以电子邮件或用户名等值开头,否则 Chrome 最终仍会显示下拉列表。例如,name="emailToDelete"
显示下拉菜单,但 name="to-delete-email"
不显示。同样适用于 autocomplete
属性。autocomplete
属性,并添加一个对您有意义的值,例如new-field-name
它看起来像这样,并且在您的余生中您将不会再次看到此输入的自动填充(并且您输入的值不会被缓存) -
<input type="text/number/something-other-than-password" name="x-field-1" autocomplete="new-field-1" />
[案例 2]:input
type
是 password