1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
|
static validateIdCard(idCard){ var regIdCard=/^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)$/;
if(regIdCard.test(idCard)){ if(idCard.length==18){ var idCardWi=new Array( 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2 ); var idCardY=new Array( 1, 0, 10, 9, 8, 7, 6, 5, 4, 3, 2 ); var idCardWiSum=0; for(var i=0;i<17;i++){ idCardWiSum+=idCard.substring(i,i+1)*idCardWi[i]; } var idCardMod=idCardWiSum%11; var idCardLast=idCard.substring(17); if(idCardMod==2){ if(idCardLast=="X"||idCardLast=="x"){ return {code:0,msg:'验证通过'}; }else{ return {code:1,msg:'身份证号码错误!'}; } }else{ if(idCardLast==idCardY[idCardMod]){ return {code:0,msg:'验证通过'}; }else{ return {code:1,msg:'身份证号码错误!'}; } } } }else{ return {code:1,msg:'身份证号码格式不正确!'}; } }
|