如何在主要浏览器中针对特定输入和/或完整表单禁用自动填充功能。
我找到了这个解决方案:
<input type="text" name="foo" autocomplete="off" />
但是,这似乎并不适用于所有浏览器。例如,我在firefox中遇到了问题。
编辑:
我的firefox问题已经解决。这留下了以下内容:我可以在表单上禁用自动填充功能,还是必须为每个输入提供自动完成功能=&#34; off&#34;
答案 0 :(得分:6)
Autocomplete
应使用以下<input>
类型:text,search,url,tel,email,password,datepickers,range和color。
但是,唉,您可以尝试将autocomplete='off'
添加到<form>
代码而不是<input>
代码中,除非有阻止您这样做的内容。
如果这不起作用,您也可以使用JavaScript:
if (document.getElementsByTagName) {
var inputElements = document.getElementsByTagName(“input”);
for (i=0; inputElements[i]; i++) {
if (inputElements[i].className && (inputElements[i].className.indexOf(“disableAutoComplete”) != -1)) {
inputElements[i].setAttribute(“autocomplete”,”off”);
}
}
}
或者在jQuery中:
$(document).ready(function(){
$(':input').live('focus',function(){
$(this).attr('autocomplete', 'off');
});
});
答案 1 :(得分:3)
您可以尝试使用javascript手动清除页面加载时的文本字段,例如:
window.onload = function() {
elements = document.getElementsByTagName("input");
for (var i=0; i<elements.length; ++i) {
elements[i].value = "";
}
};
如果在自动填充之前执行,则可能无效。另一种选择是在每次呈现页面时随机生成部分输入的name
属性(并在服务器处理提交时将其删除),然后浏览器不会尝试自动完成。
另见Is autocomplete="off" compatible with all modern browsers?
答案 2 :(得分:-1)
IE:自动填充
Firefox,Chrome,Opera:禁用自动完成
<input type="text" autocomplete="off" disableautocomplete id="number"/>