解决浏览器会自动填充密码的问题
2015-09-12 11:32
465 查看
出于安全考虑有些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" /> 。
经过测试,各种浏览器都支持。至此,问题算是解决了。
所以必须想其它的办法。尝试了几种方法,都有点不完美。其中一个方法是:用户名弄两个<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" /> 。
经过测试,各种浏览器都支持。至此,问题算是解决了。
相关文章推荐
- 谷歌 Project Zero 团队宣布新政策,漏洞披露前将有完整的 90 天缓冲期
- 春节长假安全手册
- 地震避险自救常识
- 路由器安全有关的目录
- 打造个性_安全的电脑系统图文教程2第1/2页
- 路由器内的安全认证
- 加强php的安全之一
- http www安全必备知识
- SQLServer 2008中的代码安全(一) 存储过程加密与安全上下文
- C语言安全编码之数值中的sizeof操作符
- PHP安全上传图片的方法
- C#实现线程安全的简易日志记录方法
- php 编写安全的代码时容易犯的错误小结
- JSP应用的安全问题
- asp.net安全、实用、简单的大容量存储过程分页第1/2页
- 新安装的MySQL数据库需要注意的安全知识
- 用PHP书写安全的脚本代码