我创建了一个使用标签框下拉的web应用程序。除了Chrome浏览器(Version 21.0.1180.89),这在所有浏览器中都很有效。
尽管输入字段和表单字段都有autocomplete="off"属性,Chrome坚持显示该字段以前条目的下拉历史,这是删除标签框列表。
我创建了一个使用标签框下拉的web应用程序。除了Chrome浏览器(Version 21.0.1180.89),这在所有浏览器中都很有效。
尽管输入字段和表单字段都有autocomplete="off"属性,Chrome坚持显示该字段以前条目的下拉历史,这是删除标签框列表。
当前回答
在form标签后添加这个:
<form>
<div class="div-form">
<input type="text">
<input type="password" >
</div>
添加到你的css文件:
.div-form{
opacity: 0;
}
其他回答
我使用Chrome -版本64.0.3282.140(正式版本)(64位),并使用以下代码和表单名称,它适用于我。
<form name="formNameHere">....</form>
<script type="text/javascript">
setTimeout(function(){
document.formNameHere.reset();
},500);
</script>
2021更新:将<input type="text">更改为<input type="search" autocomplete="off" >
仅此而已。保留下面的答案作为怀旧。
为了一个可靠的解决方案,你可以添加以下代码到你的布局页面:
<div style="display: none;">
<input type="text" id="PreventChromeAutocomplete"
name="PreventChromeAutocomplete" autocomplete="address-level4" />
</div>
Chrome尊重autocomplete=off只有当至少有一个其他输入元素的形式与任何其他自动完成值。
这对密码字段不起作用——这些在Chrome中的处理方式非常不同。详情见https://code.google.com/p/chromium/issues/detail?id=468153。
更新:Chromium团队于2016年3月11日关闭了“无法修复”的Bug。请参阅我最初提交的错误报告中的最后一条评论,以获得完整的解释。TL;DR:使用语义自动补全属性,如autocomplete="new-street-address",以避免Chrome执行自动填充。
为了防止自动补全,只需设置一个空白作为输入值:
<input type="text" name="name" value=" ">
始终有效的解决方案
我用随机字符的使用解决了谷歌Chrome无休止的战斗。当你总是用随机字符串渲染自动补全时,它永远不会记住任何东西。
<input name="name" type="text" autocomplete="rutjfkde">
希望对其他人有所帮助。
2022年更新:
Chrome做了这个改进:autocomplete="new-password"这将解决它,但我不确定,如果Chrome在一段时间后再次更改为不同的功能。
我发现了一个窍门:
<input type="password" id="some_id" name="some_name" value=" " placeholder="Password">
<script>
$(function)
{
$("#some_id").val("");
}
</script>
注意,value是空格。它防止自动堆积在Chrome和输入字段显示占位符。