有一个登录页,有一个新建用户页。他们都有form表单,有username和password 两个input。
在登录页的时候浏览器记住了密码,如果去到新建用户页则 username 和 password 会被自动填充上去。
解决的方法:
使用 autocomplete 属性
在不需要自动填充的 input 上设置 autocomplete 属性:
<input autocomplete="off">
这个方案对于 FireFox 和一些老版本的 Chrome 是可以的,但在较新的 Chrome 中不行
解决:
使用假的 input 让浏览器去填充
<input style="display:none">
<input type="text" id="password" name="password" autocomplete="off">
这个方法对于新版本的Chrome 还是失败
解决:
去掉style=”display:none” 同时 让input 看不到
<form>
<input type="password" style={{position: 'absolute', top: '-999px'}}/>
<input type="text" name="username"/>
<input type="password" name="password"/>
</form>
加了一点点优化
<input type="password" style="width: 1px; height: 1px; position: absolute; border: 0px; padding: 0px;">
<input id="password" type="password" placeholder="Password" autocomplete="new-password">