出于安全考虑有些web应用需要禁止浏览器自动填充密码。有人说在input标签上加上属性autocomplete="off"就可以。经过试验,这种方法不完全起作用。
所以必须想其它的办法。尝试了几种方法,都有点不完美。其中一个方法是:用户名弄两个<input>,一个是隐藏的,形式如下:<input type="text" name="username1"/>
<input type="hidden" name="username"/>,表单提交要用javascript来完成,提交前将username1的值复制到username,然后将username1的值清空。这样提交时,浏览器虽然会记住密码,但username1是空的,下次登录时,它无法自动填充。这种方式的问题是,用户会看到提交的那一瞬间,用户名变成空的了。会产生疑惑。
最后在不断的尝试过程中,发现浏览器填充密码的方式,那就是,找到页面上第一个type为password的input填充。发现了这个规律后,很自然的就想到了,是不是可以在真正的password前面加一个隐藏的password,形式如下:<input type="password" name="password1" style="display:none"/> <input type="password" name="password" /> 。
经过测试,各种浏览器都支持。至此,问题算是解决了。