【javascript学习指南】JavaScript使用简单正则表达式的数据验证功能实例

更新时间:2021-05-23    来源:正则表达式    手机版     字体:

【www.bbyears.com--正则表达式】

本文实例讲述了JavaScript使用简单正则表达式的数据验证功能。分享给大家供大家参考,具体如下:

 代码如下

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

  Register-reg

  <script type="text/javascript"language="javascript">

    functioncheckName() {

      varnameElement = document.getElementById("name");

      //var regExp = /^(a-z)[^a-z\d_]/i;

      varregExp = /[a-zA-Z\d_]/i;// \w 匹配包括下划线的任何单词字符。等价于'[A-Za-z0-9_]'。

      varregExp2 = /^[A-Za-z]/i;//匹配字符串开始位置为字母

      varresultElement = document.getElementById("resName");

      if(nameElement.value.match(regExp) && nameElement.value.match(regExp2) && nameElement.value.length >= 6) {

        //匹配成功

        //会员名为字母、数字、下划线组成,并且字母为开头,长度不小于6

        resultElement.innerHTML ="";

        returntrue;

      }

      else{

        resultElement.innerHTML ="会员名为字母、数字、下划线组成,并且字母为开头,长度不小于6!";

        returnfalse;

      }

    }

    functioncheckPwd() {

      varpwdElement = document.getElementById("pwd");

      varregExp = /[a-zA-Z\d_]/i;// \w 匹配包括下划线的任何单词字符。等价于'[A-Za-z0-9_]'。

      varregExp2 = /[a-zA-Z]/i;//匹配字母

      varregExp3 = /\d/i;//匹配数字

      varresultElement = document.getElementById("resPwd");

      if(pwdElement.value.match(regExp) && pwdElement.value.match(regExp2) && pwdElement.value.match(regExp3) && pwdElement.value.length >= 6) {

        //匹配成功

        //密码为字母、数字、下划线组成,并且必须有字母、数字,长度不小于6

        resultElement.innerHTML ="";

        returntrue;

      }

      else{

        resultElement.innerHTML ="密码为字母、数字、下划线组成,并且必须有字母、数字,长度不小于6!";

        returnfalse;

      }

    }

    functioncheckPwd2() {

      varpwdElement = document.getElementById("pwd");

      varpwd2Element = document.getElementById("pwd2");

      varresultElement = document.getElementById("resPwd2");

      if(pwdElement.value == pwd2Element.value) {

        //重输密码与之前密码完全匹配

        resultElement.innerHTML ="";

        returntrue;

      }

      else{

        resultElement.innerHTML ="密码不一致!";

        returnfalse;

      }

    }

    functioncheckGentle() {

      vargentleElement = document.getElementById("gentle");

      varresultElement = document.getElementById("resGentle");

      if((gentleElement.value =="男"|| gentleElement.value =="女") || (gentleElement.value =="m"|| gentleElement.value =="f") || (gentleElement.value =="male"|| gentleElement.value =="famale")) {

        //性别判断是否在:男、女、male、famale、m、f 之内

        resultElement.innerHTML ="";

        returntrue;

      }

      else{

        resultElement.innerHTML ="性别判断是否在:男、女、male、famale、m、f 之内!";

        returnfalse;

      }

    }

    functioncheckAge() {

      varageElement = document.getElementById("age");

      varresultElement = document.getElementById("resAge");

      if(parseInt(ageElement.value) > 0 && parseInt(ageElement.value) <= 150) {

        //如果年龄在0~150之间

        resultElement.innerHTML ="";

        returntrue;

      }

      else{

        resultElement.innerHTML ="年龄在0~150之间!";

        returnfalse;

      }

    }

    functioncheckMail() {

      varmailElement = document.getElementById("mail");

      varregExp = /[^a-z0-9_]/gi;// 匹配非字母、数字、下划线的字符

      varregExp2 = /[a-z]/gi;// 匹配字母

      varresultElement = document.getElementById("resMail");

      if(!mailElement.value.match(regExp)) {//如果出现非字母、数字、下划线的字符

        resultElement.innerHTML ="邮箱地址不正确!";

        returnfalse;

      }

      else{

        if(mailElement.value.indexOf(".") - mailElement.value.indexOf("@") >= 2) {

          resultElement.innerHTML ="";

          returntrue;

        }

        else{

          resultElement.innerHTML ="邮箱地址不正确!";

          returnfalse;

        }

      }

    }

    functioncheckTel() {

      vartelElement = document.getElementById("tel");

      varregExp = /\d{7,12}/g;// 匹配7~12位电话数字

      varregExp2 = /[^0-9]/g;// 是否有数字以外的字符

      varresultElement = document.getElementById("resTel");

      if(telElement.value.match(regExp) && telElement.value.length <= 12) {

        if(telElement.value.match(regExp2)) {

          resultElement.innerHTML ="电话号码为纯数字,且位于7~12位之间!";

          returnfalse;

        }

        else{

          resultElement.innerHTML ="";

          returntrue;

        }

      }

      else{

        resultElement.innerHTML ="电话号码为纯数字,且位于7~12位之间!";//!telElement.value.match(regExp2) &&

        returnfalse;

      }

    }

    functioncheckAll() {

      if(checkName() && checkPwd() && checkPwd2() && checkGentle() && checkAge() && checkMail() && checkTel()) {

        alert("恭喜,填写的信息正确!");

      }

      else{

        alert("错误,请确认填写的信息是否正确!");

      }

    }

    //当窗体加载完成时执行

    window.onload =function() {

      varinputElements = document.getElementsByTagName("input");

      inputElements[0].onblur =function() {

        checkName();

      }

      inputElements[1].onblur =function() {

        checkPwd();

      }

      inputElements[2].onblur =function() {

        checkPwd2();

      }

      inputElements[3].onblur =function() {

        checkGentle();

      }

      inputElements[4].onblur =function() {

        checkAge();

      }

      inputElements[5].onblur =function() {

        checkMail();

      }

      inputElements[6].onblur =function() {

        checkTel();

      }

      inputElements[7].onclick =function() {

        checkAll();

      }

    }

  </script>

  

  

    

      

表单验证

      会员名:

      密码:word"id="pwd"/>

      重复密码:word"id="pwd2"/>

      性别:

      年龄:

      电子邮件

      联系号码:

      

    

  

  

    会员名为字母、数字、下划线组成,并且字母为开头,长度不小于6

    密码为字母、数字、下划线组成,并且必须有字母、数字,长度不小于6

    性别判断是否在:男、女、male、famale、m、f 之内

    年龄在0~150之间

    邮箱地址

    电话号码为纯数字,且位于7~12位之间!

  

本文来源:http://www.bbyears.com/aspjiaocheng/119331.html

热门标签

更多>>

本类排行