js验证表单要点

1、用户名验证:匹配规则为4到16个字符(包括字母和数字)。代码如下:

function isNumberOrLetter(s)//判断是否是数字或字母,用于验证用户名,失去焦点验证。

        {

       var regu = "^[0-9a-zA-Z]{4,16}$";

       var re = new RegExp(regu);

       if (!re.test(s)) 

       {

       document.getElementById ("userInf").innerHTML="用户名格式不对!";

       document.getElementById ("userInf").style.color="red";

       }

       else 

       { document.getElementById ("userInf").innerHTML="用户名通过!";

        document.getElementById ("userInf").style.color="green";

        document.getElementById ("userIDCheck").innerHTML="";}

2、密码验证:规则为6到16个字符、下划线,第一个字符为字母。

function validatorPassword(s)//验证规则为6到16数字、字母、下划线组成,首字母为字母,用于验证密码。

           {

             regu="^[a-zA-Z][0-9a-zA-Z_]{5,15}$";

             re=new RegExp(regu);

            if (!re.test(s)) 

            {

               document.getElementById ("passwordInf").innerHTML="不对!";

               document.getElementById ("passwordInf").style.color="red";

            }

            else

            {

              document.getElementById ("passwordInf").innerHTML="通过!";

              document.getElementById ("passwordInf").style.color="green";

              document.getElementById ("passwordCheck").innerHTML="";

            }

           }

3、密码确认:验证两次密码必须一致。

function passwordConfirm(s)

       {

         if(s.toLowerCase()!=document.getElementById ("password").value.toLowerCase())

         {

               document.getElementById ("confirmInf").innerHTML="密码不一致!";

               document.getElementById ("confirmInf").style.color="red";

            

         }

         else

         {

              document.getElementById ("confirmInf").innerHTML="通过!";

              document.getElementById ("confirmInf").style.color="green";

              document.getElementById ("confirmCheck").innerHTML="";

       }

5、身份证验证:包括15位和18位。

function idNumber(s)//身份证验证

       {

         regu1=/^[1-9]/d{7}((0/d)|(1[0-2]))(([0|1|2]/d)|3[0-1])/d{3}$/;//15wei

         regu2=/^[1-9]/d{5}[1-9]/d{3}((0/d)|(1[0-2]))(([0|1|2]/d)|3[0-1])/d{4}$/;//18wei

          re1=new RegExp(regu1);

         re2=new RegExp(regu2);

         

         if(!(re1.test(s)||re2.test(s)))

         {

               document.getElementById ("idCardInf").innerHTML="格式不对!";

               document.getElementById ("idCardInf").style.color="red";               

         }

         else{

              document.getElementById ("idCardInf").innerHTML="通过!";

              document.getElementById ("idCardInf").style.color="green";

              document.getElementById ("idCardCheck").innerHTML="";

         }          

       }

4、邮箱验证:

function isEmail(strEmail) //邮箱验证

       {

if (strEmail.search(/^\w+([-+.]\w+)@\w+(([-.]\w)+).\w+([-.]\w+)*;

          {

             document.getElementById ("emailInf").innerHTML="格式不对!";

             document.getElementById ("emailInf").style.color="red";

          }

          else

          {

              document.getElementById ("emailInf").innerHTML="通过!";

              document.getElementById ("emailInf").style.color="green";

              document.getElementById ("emailCheck").innerHTML="";

          }              }

6、手机号码验证:13和15开头的号码。

function isMobileNO(s)//手机验证

       {

       var a = /^((/(/d{3}/))|(/d{3}/-))?13/d{9}|15/d{9}$/ ;

       if( !s.match(a) )

       {  document.getElementById ("mobileNOInf").innerHTML="格式不对!";

           document.getElementById ("mobileNOInf").style.color="red";

       } else

       {

              document.getElementById ("mobileNOInf").innerHTML="通过!";

              document.getElementById ("mobileNOInf").style.color="green";

              document.getElementById ("mobileNOCheck").innerHTML="";

       }

                }

7、各表单域提示信息,获得焦点验证。

function displayInform(s)//注册信息规则提示信息(获得焦点验证)

       {

         if(s=="user")

         document.getElementById ("userIDCheck").innerHTML="(用户名由4-16个数字或字母组成)";

         if(s=="password")

         document.getElementById ("passwordCheck").innerHTML="(密码由6-16个数字、字母、下划线组成,首字母必须是字母,不区分大小写)";

         if(s=="passwordC")

         document.getElementById ("confirmCheck").innerHTML="(两次密码输入必须一致)";

         if(s=="idCard")

         document.getElementById ("idCardCheck").innerHTML="(请输入正确的号码,以便你更容易找回密码)";

         if(s=="mobileNO")

         document.getElementById ("mobileNOCheck").innerHTML="(请输入正确的号码,以便你更快找回密码)";

         if(s=="email")

         document.getElementById ("emailCheck").innerHTML="(请输入正确的邮箱地址,以便你更容易找回密码)";

         

       }

8、表单提交验证:先对必填项进行非空验证,再进行匹配验证。

function submitValidator() //提交验证

      {

        if(document.getElementById("control").style.display=="inline")

        {

            if((document.getElementById ("user").value=="")||(document.getElementById("password").value=="")||(document.getElementById("passwordC").value=="")||(document.getElementById("answer").value=="")||(document.getElementById("question").value==""))

           {

              alert("必填项不能为空!");

               return false;

            }

            else

           {

              if((document.getElementById ("user").value).match(/^[0-9a-zA-Z]{4,16}$/)&&(document.getElementById("password").value).match(/^[a-zA-Z][0-9a-zA-Z_]{5,15}$/)&&

              (document.getElementById ("password").value.toLowerCase()==document.getElementById ("passwordC").value.toLowerCase()))

              {return true;}

              else

              {alert("输入格式不对");return false;}

            }

        }

       

        }

猜你喜欢

转载自blog.csdn.net/qq_37591637/article/details/82771230