使用虚假字段禁用浏览器自动完成功能不起作用

时间:2018-01-18 21:01:26

标签: html autocomplete

我只是在从重置密码页面重定向用户后才尝试在我的登录表单上禁用浏览器自动填充。

我在SO中读了很多答案但是找不到对我有用的东西。

我尝试在每个输入上的表单标记上设置autocomplete="off",但它没有用。

我尝试添加隐藏字段,但是只有在我在假密码字段中设置与真实密码字段相同的名称时才会有效 - 当然我无法做到。

这是我开始工作的唯一方式:

<form id="login-form" method="post" action="/account/login">
    <!-- fake fields are a workaround for chrome autofill getting the wrong fields -->
    <input type="text" name="prevent_autofill" id="prevent_autofill" value="" style="display:none;" />
    <input type="password" name="password" id="password_fake" value="" style="display:none;" />
    <!-- ------- -->
    <div class="inputField resetPasswordLogin login">
        <input type="email" id="email" name="email" placeholder="USERNAME"/>
    </div>
    <div class="inputField resetPasswordLogin login">
        <input type="password" id="password" name="password" placeholder="PASSWORD"/>
        <input type="submit" class="hiddenSubmit" id="hiddenLogin"/>
    </div>
</form>

似乎这种解决方法无需在密码字段中设置相同的名称,任何想法可以导致这样的行为?

1 个答案:

答案 0 :(得分:1)

这最终对我有用:

<div style="height:0px; overflow:hidden; ">
  Username <input type="text" name="fake_username" >
  Password <input type="password" name="fake_password">
</div>