?//?身份证号码验证???
?jQuery.validator.addMethod("idcardno",?function(value,?element)?{
???return?this.optional(element)?||?isIdCardNo(value);???
?},?"请正确输入身份证号码");
?
??//字母数字
?jQuery.validator.addMethod("alnum",?function(value,?element)?{
???return?this.optional(element)?||?/^[a-zA-Z0-9]+$/.test(value);
?},?"只能包括英文字母和数字");
?
??//?手机号码验证???
?jQuery.validator.addMethod("cellphone",?function(value,?element)?{
???var?length?=?value.length;
???return?this.optional(element)?||?(length?==?11?&&?/^(1\d{10})$/.test(value));
?},?"请正确填写手机号码");?
?
??//?电话号码验证???
?jQuery.validator.addMethod("telephone",?function(value,?element)?{
???var?tel?=?/^(\d{3,4}-?)?\d{7,9}$/g;
???return?this.optional(element)?||?(tel.test(value));
?},?"请正确填写电话号码");
?
?//?邮政编码验证
?jQuery.validator.addMethod("zipcode",?function(value,?element)?{
???var?tel?=?/^[0-9]{6}$/;
???return?this.optional(element)?||?(tel.test(value));
?},?"请正确填写邮政编码");
?
??//?汉字
?jQuery.validator.addMethod("chcharacter",?function(value,?element)?{
???var?tel?=?/^[\u4e00-\u9fa5]+$/;
???return?this.optional(element)?||?(tel.test(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?and?set?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)?return?false
???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
}?
详细解决方案
jquery validate自定义印证方法(转)
热度:198 发布时间:2012-07-29 15:26:14.0
相关解决方案
- jquery 获取jsp页面的id解决方法
- jquery,二维数组取值。解决办法
- 求jquery.form.js+jquery.validate.min.js 用ajax提交表单的代码范例
- jquery 提交form表单不用插件的那种 如何提交
- jquery ajax回传没有值,该怎么处理
- jquery easyUI datagrid struts2有关问题
- jquery form 有关问题
- springmvc jquery ajax 提交复杂对象,415异常解决办法
- 应用Struts2 与 jquery,ajax验证用户注册,不用从数据库获取数据
- jquery ajax select解决方法
- php jquery check username ajax检察帐号唯一性
- jquery ajax返回值的有关问题
- jquery 或js 获取指定字符间的字符串,并轮换。回答出来的是大神级~
- jquery 的bind里面能不能获得返回值呢? 对小弟我很难的有关问题啊
- jquery 的uploadify下传图片怎么让出错信息提示成中文
- java+jquery easy ui + json + struts分页例子
- jquery easyui分页效率有关问题
- jquery 如何获得动态添加后的子元素个数?
- jQuery.ajax()请求struts2数据 回到data值了undefined
- 关于Struts2 jQuery Plugin的 Result,该如何处理
- Jquery 点击按钮实现图片翻页,该如何解决
- jquery 关于监听checkbox的选中和不选中事件,该如何解决
- jQuery append动态添加的页面对象如何处理刷新掉
- Jquery+json解决思路
- jquery post有关问题
- 求大神解决偏题 - jquery ajax
- jquery $.ajax有关问题
- jquery td遍历有关问题
- jquery ui taps有关问题,求解!
- jquery easyui 如何设置标题列居左,里面的数据列居右