解决坑爹的input框自动填充密码和密码历史记录

1.input框会自动填充密码

 

原因:浏览器会根据用户已经保存过的密码,在type为password的input中自动填充密码
目前的解决办法是设置一个隐藏的inpu让他填充
//隐藏
<input type="password" class="form-control" name="SecretOld" style="display:none" />
//实际使用
 <input type="password" class="form-control" id="SecretOld" name="SecretOld" placeholder="请输入旧密码"  
  οnfοcus="this.removeAttribute('readonly');" οnblur="this.readOnly = 'readonly'" readonly style="background-color:white" />

 

 2.解决密码框的历史记录

当用户有选择记录密码时候,会在type为password的input中显示已经保存的用户密码
坑爹的是网上普遍的解决办法
autocomplete="off"和autocomplete="new-passoword"都无效,很崩溃
最后从根源出发,在你password第一次进来时候给你设置为readonly,设置为只读属性,就不会显示密码的历史记录,当用户在点击时候触发属性,再将input的只读属性去除

用户焦点点击属性:onfocus="this.removeAttribute('readonly');"
但是当用户第二次点击时候,又会出现密码框的历史记录,我日
加入第二条属性:用户焦点离开时候,我再给你设置为只读
用户焦点离开属性:onblur="this.readOnly = 'readonly'"
但是又有个问题,当属性为只读的时候,input框为灰色的,这样效果很差,会让用户以为是不可点击的,于是想到将input只读的框样式更改为和原来一样就ok了
更改只读时候input的样式:readonly style="background-color:white"
只读时候input框就和输入时候一样了

不过最终360和火狐都解决成功,chrome在用户有保存密码的情况下,依旧会出现密码历史记录的情况,还在努力找出解决方法

转载于:https://www.cnblogs.com/ack6165/p/11264576.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值