众所周知,在修改密码时会需要两次输入密码。这时如何确保两个密码框中都有内容?两个密码框中是一致的?如果一个没有输入会给出提示?OK这一切都可以用JS来实现,具体思想很简单啦,就是编写事件获取dom节点,判断对象的取值呀?
那么编写什么事件?应该是onblur事件~。而且要为两个密码框都加上失去焦点的blur事件。利用jQuery比较方便勒。
话不多说,直接上代码:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>password验证</title> <script src="https://www.jb51.net/jquery/jquery-3.1.1.min.js" type="text/javascript"></script> </head> <body> <form ation="psot" method=""> <label for="password1">请输入密码:</label> <input onblur="checkpas1();" required="true" type="password"/> <br/> <label for="password1">请确认密码:</label> <input type="password" required="true" onChange="checkpas();" /> <span>两次输入的密码不一致</span><br> <input type="button" value="提交"/> </form> <script> $(".tip").hide(); function checkpas1(){//当第一个密码框失去焦点时,触发checkpas1事件 var pas1=document.getElementById("password").value; var pas2=document.getElementById("repassword").value;//获取两个密码框的值 if(pas1!=pas2&&pas2!="")//此事件当两个密码不相等且第二个密码是空的时候会显示错误信息 $(".tip").show(); else $(".tip").hide();//若两次输入的密码相等且都不为空时,不显示错误信息。 } function checkpas(){//当第一个密码框失去焦点时,触发checkpas2件 var pas1=document.getElementById("password").value; var pas2=document.getElementById("repassword").value;//获取两个密码框的值 if(pas1!=pas2){ $(".tip").show();//当两个密码不相等时则显示错误信息 }else{ $(".tip").hide(); } } function checkpas2(){//点击提交按钮时,触发checkpas2事件,会进行弹框提醒以防无视错误信息提交 var pas3=document.getElementById("password").value; var pas4=document.getElementById("repassword").value; if(pas3!=pas4){ alert("两次输入的密码不一致!"); return false; } } </script> </body> </html> </html>
希望大家能去理解代码,其实还是比较简单的,多写写就会了。我也是才上手的。说的不对的,希望大佬指出来