/* 追加自定义验证方法 */
// 身份证号码验证
jQry.validator.addMethod(“idcardno”, function(val, element) {
return this.optional(element) || isIdCardNo(val);
}, ”请正确输入身份证号码”);
//字母数字
jQry.validator.addMethod(“alnum”, function(val, element) {
return this.optional(element) || /^[a-zA-Z0-9]+$/.test(val);
}, ”只能包括英文字母和数字”);
// 手机号码验证
jQry.validator.addMethod(“cellphone”, function(val, element) {
var length = val.length;
return this.optional(element) || (length == 11 && /^(1\d{10})$/.test(val));
}, ”请正确填写手机号码”);
// 电话号码验证
jQry.validator.addMethod(“telephone”, function(val, element) {
var tel = /^(\d{3,4}-?)?\d{7,9}$/g;
return this.optional(element) || (tel.test(val));
}, ”请正确填写电话号码”);
// 邮政编码验证
jQry.validator.addMethod(“zipcode”, function(val, element) {
var tel = /^[0-9]{6}$/;
return this.optional(element) || (tel.test(val));
}, ”请正确填写邮政编码”);
// 汉字
jQry.validator.addMethod(“chcharacter”, function(val, element) {
var tel = /^[\一-\龥]+$/;
return this.optional(element) || (tel.test(val));
}, ”请输入汉字”);
/**
* 身份证号码验证
*
*/
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 intVal;
var lngProd t = 0;
var intCheckDigit;
var intStrLen = num.length;
var idNumber = num;
// initialize
if ((intStrLen != 15) && (intStrLen != 18)) {
return false;
}
// check and set val
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.s string(6,14);
if (isDate8(date8) == false) {
return false;
}
// calculate the sum of the prod ts
for(i=0;i<17;i++) {
lngProd t = lngProd t + varArray[i];
}
// calculate the check digit
intCheckDigit = parityBit[lngProd t % 11];
// check last digit
if (varArray[17] != intCheckDigit) {
return false;
}
}
else{ //length is 15
//check date
var date6 = idNumber.s string(6,12);
if (isDate6(date6) == false) {
return false;
}
}
return tr;
}
/**
* 判断是否为“YYYYMM”式的时期
*
*/
function isDate6(sDate) {
if(!/^[0-9]{6}$/.test(sDate)) {
return false;
}
var year, month, day;
year = sDate.s string(0, 4);
month = sDate.s string(4, 6);
if (year < 1700 || year > 2500) return false
if (month < 1 || month > 12) return false
return tr
}
/**
* 判断是否为“YYYYMMDD”式的时期
*
*/
function isDate8(sDate) {
if(!/^[0-9]{8}$/.test(sDate)) {
return false;
}
var year, month, day;
year = sDate.s string(0, 4);
month = sDate.s string(4, 6);
day = sDate.s string(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 tr
}
自带验证规则
function validateForm(){
return $("#inputForm").validate({
rules: {
email: {
required: true,
email: true,
// remote:"${ctx}/register/checkEmail"
},
nickName:{
required: true
},
gender:{
required: true
},
signature : {
maxlength : 255
},
// password: {
// required: true,
// minlength: 5
// },
// confirm_password: {
// required: true,
// minlength: 5,
// equalTo: "#password"
// },
validateCode: {
required: true
}
},
messages: {
email: {
remote: "用户邮箱已存在"
}
},
});
}