Chrome忽略自动填充='关闭'

时间:2015-03-18 15:29:44

标签: google-chrome autocomplete

我创建了一个网络FROM,但Chrome自动填充功能会将信息填入错误的位置。 Chrome (版本41.0.2272.89(64位))

尽管输入字段和表单字段都具有autocomplete =“off”属性,但Chrome仍然会显示该字段以前条目的下拉历史记录。

样本来自

<form accept-charset="UTF-8" action="/something" autocomplete="off" id="something_form" method="post">
<div style="margin:0;padding:0;display:inline">
  <input name="utf8" type="hidden" value="&#x2713;" />
  <input name="authenticity_token" type="hidden" value="xxxxxxxxxxxx" />
</div>
<div class="form-group no-padding col-xs-12 col-sm-12 col-md-12 col-lg-12">        
  <label class="control-label col-xs-4 col-md-4 col-sm-4 col-lg-4 no-padding text-right" for="from-course-name">
    Name:
  </label>
  <div class="controls col-xs-8 col-md-8 col-sm-8 col-lg-8 no-padding">
    <div class="input-append">
      <input id="from-name" inlineeditable-column="0" type="text" name="o_name" class="form-control custom-form_control required sensitive long "  autocomplete="off"  >
          </div>
        </div>
      </div>
</form>

3 个答案:

答案 0 :(得分:0)

在您要停止自动完成的输入字段中,这将起作用。使字段只读并在焦点上删除该属性,如

<input readonly onfocus="this.removeAttribute('readonly');" onblur="this.setAttribute('readonly');"  id="from-name" type="text" name="o_name" class="form-control custom-form_control required ">

答案 1 :(得分:0)

在Chrome中,autocomplete =“ off”仅适用于 以外的字段,密码,电子邮件,用户名,移动电话,邮政编码,城市,...

如果字段的名称 id 类似于id =“ blabla-password”或名称“ email-blabla”或id =“ bla-username-bla”等...那么您必须使用以下

id="bla-bla-some-password" autocomplete="new-password"
id="bla-email-bla"         autocomplete="new-email"
id="some-username-id"      autocomplete="new-username" 
name="bla-password"        autocomplete="new-password"
name="bla-email-bla"       autocomplete="new-email"
name="some-username-id"    autocomplete="new-username"
...city                    autocomplete="nope"
...zipcode                 autocomplete="nope"
...mobile                  autocomplete="nope"
...

对于所有其他字段,请继续使用autocomplete =“ off”! 仍然是最好的结果

id="description" autocomplete="off"
id="date"        autocomplete="off"
id="some-text"   autocomplete="off"
...

依此类推

答案 2 :(得分:0)

Chrome已经有一段时间忽略了autocomplete =“ off”,您必须执行以下操作来欺骗chrome:1.将输入类型设置为文本,并且2.触发焦点事件时重置输入类型< / p>

<input type="text" id="password" autocomplete="off" name="password">


$('#password').on('focus', function(){
    $('#password').attr('type', 'password');
});

使用Jquery完成重置