jQuery validate 手机号和身份证号验证

来源:互联网 发布:java开发mes系统 编辑:程序博客网 时间:2024/04/27 15:55
// 自定义手机号码验证  (130-139)(180-189)(140-149)(170-179)(150-159)号段jQuery.validator.addMethod("isMobile", function(value, element) {    var length = value.length;    var mobile = /^(13[0-9]{9})|(18[0-9]{9})|(14[0-9]{9})|(17[0-9]{9})|(15[0-9]{9})$/;    return this.optional(element) || (length == 11 && mobile.test(value));}, "请正确填写您的手机号码");


// 身份证号码验证jQuery.validator.addMethod("isIdCardNo", function(value, element) {return this.optional(element) || isIdCardNo(value);}, "请正确输入您的身份证号码");
//身份证验证 引入的方法function isIdCardNo(num) {    var factorArr = new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5,8, 4, 2, 1);    var parityBit = new Array("1", "0", "X", "9", "8", "7", "6", "5", "4","3", "2");    var varArray= new Array();    var intValue;    var lngProduct = 0;    var intCheckDigit;    var intStrLen = num.length;    var idNumber= num;    //initialize    if((intStrLen != 15) && (intStrLen !=18)) {       return false;    }    // check andset value    for (i = 0;i < intStrLen; i++) {       varArray[i] = idNumber.charAt(i);       if ((varArray[i] < '0' || varArray[i]> '9') && (i != 17)){           return false;       } else if (i < 17) {           varArray[i] = varArray[i] * factorArr[i];       }    }    if(intStrLen == 18) {       //check date       var date8 = idNumber.substring(6, 14);       if (isDate8(date8) == false) {           return false;       }       // calculate the sum of the products       for (i = 0; i < 17; i++) {           lngProduct = lngProduct + varArray[i];       }       // calculate the check digit       intCheckDigit = parityBit[lngProduct % 11];       // check last digit       if (varArray[17] != intCheckDigit) {           return false;       }    }    else{       //length is 15       //check date       var date6 = idNumber.substring(6, 12);       if (isDate6(date6) == false) {           return false;       }    }    return true;}function isDate6(sDate) {    if(!/^[0-9]{6}$/.test(sDate)) {       return false;    }    var year,month, day;    year =sDate.substring(0, 4);    month =sDate.substring(4, 6);    if (year< 1700 || year > 2500) returnfalse    if (month< 1 || month > 12) return false    return true}function isDate8(sDate) {    if(!/^[0-9]{8}$/.test(sDate)) {       return false;    }    var year,month, day;    year =sDate.substring(0, 4);    month =sDate.substring(4, 6);    day =sDate.substring(6, 8);    var iaMonthDays = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30,31]    if (year< 1700 || year > 2500) return false    if (((year %4 == 0) && (year % 100 != 0)) ||(year % 400 == 0)) iaMonthDays[1] = 29;    if (month< 1 || month > 12) return false    if (day< 1 || day > iaMonthDays[month - 1])return false    return true}
//载入<span style="font-family:Arial, Helvetica, sans-serif;">$('#form').validate({</span><span style="font-family: Arial, Helvetica, sans-serif;"></span><span style="font-family: Arial, Helvetica, sans-serif;">rules:{</span><span style="font-family: Arial, Helvetica, sans-serif;"></span><span style="font-family: Arial, Helvetica, sans-serif;">phone:{</span><span style="font-family:Arial, Helvetica, sans-serif;"><span style="white-space:pre"></span></span><span style="font-family: Arial, Helvetica, sans-serif;">isMobile:true</span><span style="font-family:Arial, Helvetica, sans-serif;"><span style="white-space:pre"></span>},</span><span style="font-family: Arial, Helvetica, sans-serif;"><span style="white-space:pre"></span>idcard:{</span><span style="font-family:Arial, Helvetica, sans-serif;"><span style="white-space:pre"></span>required:true,</span><span style="font-family: Arial, Helvetica, sans-serif;"><span style="white-space:pre"></span>isIdCardNo:true</span><span style="font-family: Arial, Helvetica, sans-serif;"><span style="white-space:pre"></span>}</span><span style="font-family: Arial, Helvetica, sans-serif;"><span style="white-space:pre"></span>},</span><span style="font-family: Arial, Helvetica, sans-serif;"><span style="white-space:pre"></span>messages:{<span style="white-space:pre"></span></span><pre name="code" class="javascript"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="white-space:pre"></span>phone:{</span><span style="font-family:Arial, Helvetica, sans-serif;"><span></span>//i</span><span style="font-family: Arial, Helvetica, sans-serif;">sMobile:true //不填写则为默认错误信息</span><span style="font-family: Arial, Helvetica, sans-serif;"><span></span>},</span>
idcard:{
<span style="font-family:Arial, Helvetica, sans-serif;"><span style="white-space:pre"></span>required</span><span style="font-family: Arial, Helvetica, sans-serif;">:'请填写身份证号'</span><span style="font-family: Arial, Helvetica, sans-serif;">,</span><span style="font-family: Arial, Helvetica, sans-serif;"></span><span style="font-family: Arial, Helvetica, sans-serif;">//</span><span style="font-family: Arial, Helvetica, sans-serif;">isIdCardNo:true   //不填写则为默认错误信息</span>
<span style="font-family: Arial, Helvetica, sans-serif;"></span><span style="font-family: Arial, Helvetica, sans-serif;">}</span>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="white-space:pre"></span>},</span>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="white-space:pre"></span></span><pre name="code" class="javascript"><span style="font-family: Arial, Helvetica, sans-serif;"><span style="white-space:pre"></span>errorClass : 'help-inline',<span></span>errorElement : 'span',<span></span>errorPlacement : function(error, element) {<span></span>element.after(error);<span></span>},</span>
highlight : function(element, errorClass, validClass) {
},
success : function(label) {
},
submitHandler : function(form) {
$('#btn-school-roll-core-info-edit').prop("disabled", true);
editSchoolRollCoreInfo();
}
})




0 0
原创粉丝点击