【问题标题】:How to disable autocomplete for all major browsers如何禁用所有主要浏览器的自动完成功能
【发布时间】:2015-03-02 22:02:54
【问题描述】:

如何在主要浏览器中为特定输入和/或完整表单禁用自动完成功能。

我找到了这个解决方案:

<input type="text" name="foo" autocomplete="off" />

但是,这似乎不适用于所有浏览器。例如,我在 Firefox 中遇到过问题。

编辑:

我的 Firefox 问题已解决。剩下以下内容:我可以在表单上禁用自动完成功能还是必须为每个输入提供 autocomplete="off"

【问题讨论】:

  • 您在使用 Firefox 的哪个版本时遇到了什么问题?
  • @JukkaK.Korpela 很简单 :) 使用 autocomplete="off" 时,它仍会显示带有先前输入建议的下拉菜单。
  • 您需要比这更具体。当我在 Firefox 中使用 autocomplete="off" 时,它不会显示建议。你确定你没有例如安装了自动填充插件?问题中的代码是否重现了问题?
  • @JukkaK.Korpela 感谢您的提示!当我关闭插件时,它确实有效。这留下了表单问题。

标签: html forms browser autocomplete


【解决方案1】:

Autocomplete 应与以下 &lt;input&gt; 类型一起使用:文本、搜索、url、电话、电子邮件、密码、日期选择器、范围和颜色。

但是,您可以尝试将autocomplete='off' 添加到您的&lt;form&gt; 标签而不是&lt;input&gt; 标签,除非有什么阻止您这样做。

如果这不起作用,您也可以使用 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');
    });
});

【讨论】:

    【解决方案2】:

    您可以尝试使用 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?

    【讨论】:

      【解决方案3】:

      IE:自动完成

      Firefox, Chrome, Opera:禁用自动完成

      <input type="text" autocomplete="off" disableautocomplete id="number"/>
      

      【讨论】:

      • 请尝试在您的回答中提供更多信息,使用适当的句子,以便您的解决方案对其他人更具可读性。
      猜你喜欢
      • 1970-01-01
      • 2011-02-17
      • 2019-05-05
      • 2020-04-20
      • 2019-03-31
      • 1970-01-01
      • 1970-01-01
      • 2012-03-14
      • 2013-09-11
      相关资源
      最近更新 更多