您的位置:首页 > Web前端 > JavaScript

身份证 护照等js校验

2016-04-25 15:18 447 查看

function checkName(text){ //传入对象

 if ($(text).val() != '') {

 var a =$(text).val();

 var msg;

  a=a.replace(/\.|。/g,"·");//英文点和句号替换成中间点

  var re =new RegExp("^(([\u4e00-\u9fa5]+[·])*[\u4e00-\u9fa5]+)$");//汉字包括少数民族名字

  var re1 = new RegExp("^([a-zA-Z\\s]+)$");//英文

 

  if(re.test(a)){//为汉字的时候的处理

   if(1==a.length){

    msg="中文名字最少长度为2";

   }else if(a.length>32){

    msg="中文名字最大长度为32";

   }else{

    msg = "0000";

    $(text).val(a);

   }

  }else if(re1.test(a)){//为英文的时候的处理

   a=a.replace(/[\s]+/g," ");//空白符替换成空格

   a=a.replace(/(^\s*)|(\s*$)/g, "");//去除左右空格

   if(1==a.length){

    msg="英文名字最少长度为2";

   }else if(a.length>64){

    msg="英文名字最大长度为64";

   }else{

    msg = "0000";

    $(text).val(a);

   }

  }else{ //混合的时候处理

   msg="请输入正确的姓名";

  }

 return msg;

 }

 return "0000";

$("#appliName").blur(function() {

  var name = checkName("#appliName");

  if (name=="0000") {

   $(".appliName_error").addClass("hide");

  } else {

   $(".appliName_error").children("span").text(name);

   $(".appliName_error").removeClass("hide");

  }

 });

----------------------------------------------------------上面是名字校验----------------------------------------

$("#mobile").blur(function(){

  var name = checkPhone("#mobile");

  if (name=="0000") {

   $(".applicantPhone_error").addClass("hide");

  } else {

   $(".applicantPhone_error").children("span").text(name);

   $(".applicantPhone_error").removeClass("hide");

  }

 });

function checkPhone(text){

 if ($(text).val() != '') {

  var msg = "请输入正确的手机号";

  var re1 = new RegExp("^[1][3-8]+\\d{9}$");

  if (re1.test($(text).val())) {

   return "0000";

  } else {

   return msg;

  }

 }

 return "0000";

}

----------------------------------------------------------上面是手机号校验----------------------------------------

$("#email").blur(function(){

  var name = checkEmail("#email");

  if (name=="0000") {

   $(".applicantEmail_error").addClass("hide");

  } else {

   $(".applicantEmail_error").children("span").text(name);

   $(".applicantEmail_error").removeClass("hide");

  }

  });

function checkEmail(text){

 if ($(text).val() != '') {

 var msg="请输入正确的邮箱";

//     var re =new RegExp("(^(\\w)+(\.\\w+)*@(\\w)+((\\.\\w+)+)$)");

     var re =new RegExp("(^(\\w)+(\\.\\w+)*@(\\w)+((\\.\\w+)+)$)");

     if(re.test($(text).val())){

      return "0000";

     }else{

      if($(text).val()==""){

       msg="请输入电子邮箱";

      }

      return msg;

     }

 }

 return "0000";

}

----------------------------------------------------------上面是email校验----------------------------------------

function checkIdCode(text,event){

 var msg="";

 var type = $(text+"Type").val();

 if($(text).val() != ''){

 if("身份证"==type){//身份证号

  if(text=="#applicantIdentifyCode"){

   $(".applicantBirthDay_show").text("请输入");

   $("#applicantBirthDay").val("");

  }else{

   $(".insuredBirthDay_show").text("请输入");

   $("#insuredBirthDay").val("");

  }

  msg="请输入正确的身份证号";

     var re =new RegExp("(^\\d{15}|\\d{17}(\\d{1}|X|x)$)");//(^\\d{15}$)|(^\\d{17}([0-9]|X)$)

     var card =$(text).val();

     card=card.toUpperCase();

     if(re.test(card)){

     //15位转18位

      var arrInt = new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2);

         var arrCh = new Array('1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2');

         var cardTemp = 0, i, valnum;

         var date;

     if("15"==card.length){

    date="19"+card.substr(6, 6);

    if(!checkDate(date,type,text)){

     return "请输入正确的身份证号";

    }

    return "0000";

     }

         var len = card.length;

         if(len == '18')

         {

          date=card.substr(6, 8);

     if(!checkDate(date,type,text)){

     return "请输入正确的身份证号";

     }

             for(i = 0; 17 > i ; i ++)

             {

                 cardTemp += card.substr(i, 1) * arrInt[i];

             }

             valnum = arrCh[cardTemp % 11];

             if (valnum == card.substr(17, 1))

             {

                 return "0000";

             }else{

              return "请输入正确的身份证号";

             }

         }

     }

 }else if("护照"==type){//护照

  msg="请输入正确的护照号";

  var re =new RegExp("(^([PSE]{1}\\d{7}|[GS]{1}\\d{8})$)");//E字打头的后面不知道要跟几位

  var card=$(text).val().toUpperCase();

  if(re.test(card)){

   return "0000";

  }

 }else if("军官证"==type){//军官证

  msg="请输入正确的军官证号";

  var re =new RegExp("^([\u4e00-\u9fa5]{1,}[\u4e00-\u9fa50-9()()-]{5,})$");

  if(re.test($(text).val())){

   return "0000";

  }

 }else{

  return "没有此证件类型";

 }

 return msg;

 }

 return "0000";

}

var name = checkIdCode("#applicantIdentifyCode",event);

  if (name=="0000") {

   $(".applicantIdentify_error").addClass("hide");

  } else {

   $(".applicantIdentify_error").children("span").text(name);

   $(".applicantIdentify_error").removeClass("hide");

  }

 });

 $(".insuredIdentifyCode_error").addClass("hide");

 

 $("#insuredIdentifyCode").focus(function(event){

  $(".insuredIdentifyCode_error").addClass("hide");

 });

 $("#insuredIdentifyCode").keyup(function(event){

  //var name =

   //checkIdenti("#insuredIdentifyCode",event);

  /*if (name=="0000") {

   $(".insuredIdentifyCode_error").addClass("hide");

  } else {

   $(".insuredIdentifyCode_error").children("span").text(name);

   $(".insuredIdentifyCode_error").removeClass("hide");

  }

  */

 });

 $("#insuredIdentifyCode").blur(function(event){

  var name = checkIdCode("#insuredIdentifyCode",event);

  if (name=="0000") {

   $(".insuredIdentifyCode_error").addClass("hide");

  } else {

   $(".insuredIdentifyCode_error").children("span").text(name);

   $(".insuredIdentifyCode_error").removeClass("hide");

  }

  

 });

});

----------------------------------------------------------上面是身份证 军官证 护照的校验----------------------------------------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  js