密码隐藏/显示的简单实现
实现原理:
原理很简单,就是通过对显示密码单选框选中状态的判断,使用Jquery(或者JS)动态改变密码输入框的type为password或者text。具体的其他样式可以再添加,但是代码是不变的。
具体代码:
<h3>登录 信息</h3> <div> <span>密码(6-20位以字母开头只能包含字母、数字、下划线)<label style="color:red;">*</label> <font id="passwordMSG"></font></span> <input type="password" name="password" id="password" maxlength="20" required οnblur="checkPwd(this.value)"> </div> <div> <span>重复密码<label style="color:red;">*</label> <font id="mm2MSG"></font></span> <input form="other" type="password" id="mm2" maxlength="20" required οninput="checkPwd2(this.value)"> </div> <div class="clear"></div> <a class="news-letter" href="#"> <label class="checkbox"> <input type="checkbox" οnclick="checkit(this.checked)"><i></i>显示密码</label> </a>
可以看到单选框绑定了onclick事件,并将选中状态(this.checked)传了过去:
/*显示密码*/ function checkit(isChecked) { if (isChecked) { $("#password").prop("type", text); $("#mm2").prop("type", text); } else { $("#password").prop("type", password); $("#mm2").prop("type", password); } }
至此就大功告成了;
最后说一下可能会遇到的坑:prop与attr的选择
-
对于HTML元素本身就带有的固有属性,在处理时,使用prop方法。 对于HTML元素我们自己自定义的DOM属性,在处理时,使用attr方法。