删除 HTML 表单的 Chrome 自动填充功能
Posted
技术标签:
【中文标题】删除 HTML 表单的 Chrome 自动填充功能【英文标题】:Remove Chrome autofill for HTML forms 【发布时间】:2014-12-17 06:27:39 【问题描述】:我在 html 中创建了一个简单的表单,它有两个字段:用户名和密码,然后是一个登录按钮。 当我在 Chrome 中运行该页面时,它会将我的 XAMPP-phpmyadmin 用户名和密码填充到两个字段中,并将它们突出显示为黄色。 我怎样才能完全删除它,所以它们是空白的。谢谢
HTML 表单代码:
<html>
<form action= "entryformlogon.php" method = "post" autocomplete="off">
Username: <input type="text" name="Username"><br>
Password: <input type="password" name="Password"><br>
<input type="submit" value="Log in">
</form>
</html>
【问题讨论】:
【参考方案1】:autocomplete="off" 必须添加到每个输入元素。即
<input type="text" name="Username" autocomplete="off">
【讨论】:
我刚试过,看看:jsfiddle.net/yq3t5b9p 在 jsfiddle 中运行时表单是空白的,但是在 chrome 中运行时问题仍然存在 这里似乎有一个不错的解决方法***.com/questions/15738259/disabling-chrome-autofill【参考方案2】:Chrome 会用我的 XAMPP-phpmyadmin 用户名和密码填充这两个字段,并将它们突出显示为黄色。我怎样才能完全删除它,所以它们是空白的。 @Charley Baker
这个只读修复对我有用:
修复浏览器自动填充:只读并在焦点上设置可写(在鼠标单击和通过字段切换时)
<input type="password" readonly
onfocus="$(this).removeAttr('readonly');"/>
顺便说一下,关于 Chrome 和 Safari 自动填充行为的更多信息:
有时即使 autocomplete=off 也不会阻止将凭据填写到错误的字段中,但不会阻止用户或昵称字段。我猜,Chrome 和 Safari 会寻找密码字段来插入您保存的凭据。然后它将 username 自动填充到最近的 textlike-input 字段中,该字段出现在 DOM 中的密码字段之前(只是由于观察而猜测)。由于浏览器是最后一个实例,您无法直接控制它,但上面的只读技巧修复了它。 :-)
【讨论】:
【参考方案3】:最新版本的 chrome
<input type="password" name="whatever" autocomplete="new-password" />
旧版本
<input type="password" name="whatever" autocomplete="false" />
或
<input type="password" name="whatever" autocomplete="off" />
【讨论】:
以上是关于删除 HTML 表单的 Chrome 自动填充功能的主要内容,如果未能解决你的问题,请参考以下文章