Cel*_*ydy 53 html google-chrome
我刚刚将浏览器更新为Chrome版本63.0.3239.84(官方版本)(64位).
然后我继续访问我的网站,我有一个输入框autocomplete='off',但我仍然得到以下内容:
(你可以在下面看到我内置的建议下拉菜单)
这从来就不是这样的.没有其他改变!
为什么会这样?这是新版Chrome中的错误吗?我已尝试过所有其他建议,autocomplete="false"或将autocomplete = off应用于表单.我甚至试图在页面加载后用jquery应用这些,但也没有运气.
我已经在不同操作系统上使用最新版本的chrome在多台机器上进行了测试.问题依然存在.
Sol*_*ieg 48
2018年2月更新:
感谢@JamesNisbet在评论中指出这一点.
根据Chrome团队的说法,autocomplete ="off"和autocomplete ="false"将被忽略.这不是Chrome中的暂时回归.
Chrome会尝试在自动填充时自动填充符合WHATWG标准的任何表单字段.除了一个例外,它们忽略"off"和"false"值.
总之,要禁用自动填充,请使用autocomplete属性,其值不在WHATWG列表中.
如果您认为此Chromium线程中 Chrome不应忽略autocomplete ="off"的原因.
看起来像Chrome 63中的可能回归.在Chrome的原始自动填充文档中:
过去,许多开发人员会在其表单字段中添加autocomplete ="off",以防止浏览器执行任何类型的自动完成功能.虽然Chrome仍然会将此标记视为自动填充数据,但它不会将其视为自动填充数据.那么什么时候应该使用autocomplete ="off"?一个例子是你为搜索实现了自己的自动完成版本.
https://developers.google.com/web/updates/2015/06/checkout-faster-with-autofill
它们确实区分了自动完成和自动填充,但不清楚它们是不同的.
Chrome,Safari和Edge都试图实施自动填充,但没有明确的标准.它们查看name属性而不是显式的标准化属性.
现在autocomplete="something-new"是一个很好的解决方法,虽然在语法上它是没有意义的.这似乎有效,因为浏览器无法理解它.
Ere*_*bus 26
我们尝试了autocomplete ="false"和autocomplete ="off",但都没有工作.但Chrome无法理解的内容,例如autocomplete ="disabled",似乎确实有效.奇怪!
更新:此功能从Chrome 72开始运行.
Bra*_*ito 14
2019 从autocomplete="disabled"Chrome 72开始,它似乎又有效了.
由于很多人在没有阅读评论的情况下 已经下降了 :2018年以来铬的作品不再有用/相关的63+相关:https://bugs.chromium.org/p/chromium/issues/detail ?id = 58746
使用autocomplete ="false"而不是autocomplete ="off"有效,您可以从Chrome小组中了解更多内容,了解他们为什么这么做
这里:
https://www.chromium.org/developers/design-documents/form-styles-that-chromium-understands https://bugs.chromium.org/p/chromium/issues/detail?id=468153 https:// groups.google.com/a/chromium.org/forum/#!topic/chromium-dev/zhh7hCip5c https://developers.google.com/web/updates/2015/06/checkout-faster-with-autofill
小智 6
看起来 chrome 会寻找最接近输入的“标签”html 标签,并分析标签的值/html 以影响输入的自动填充。
我发现禁用输入自动填充的最干净的解决方法是:
<label for="">Country</label>
<label for="" style="display: none;">hidden label to mislead chrome autocomplete</label>
<input ... />
Run Code Online (Sandbox Code Playgroud)
我已经设法在Chrome版本65.0.3325.162(官方版本)(64位)中获得了工作"黑客".
我必须渲染一个输入字段 - 隐藏所以它不会影响我的页面:
<input style="display:none;"/>
Run Code Online (Sandbox Code Playgroud)
然后我渲染我的密码输入字段:
<input type="password" autocomplete="new-password" />
Run Code Online (Sandbox Code Playgroud)
所以我的表格最终看起来像:
<form>
<input style="display:none;" />
<input type="password" autocomplete="new-password" />
<input type="submit" />
</form>
Run Code Online (Sandbox Code Playgroud)
重要的是,您不能在密码类型输入元素中添加名称或ID属性,并且必须具有autocomplete ="new-password"