先上效果图吧:
实现原理:
原理很简单,就是通过对显示密码单选框选中状态的判断,使用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方法。
转载自原文链接, 如需删除请联系管理员。
原文链接:密码隐藏/显示的简单实现,转载请注明来源!