//检查身份证号码是否存在
$.validator.addMethod("checkIDCardExist", function (value, element) {
if ($("#IDType").val() == "1")//为身份证号码时
{
var IDCard = value,
res = false;
$.ajax({
type: "POST",
async: false,
url: "/Server/CheckIDCard",
data: { IDCard: IDCard },
success: function (response) {
if (response.isSuccess) {
//给form元素赋值
res = true;
databind(response);
} else {
res = false;
}
}
});
return res;
} else {
return true;
} }, "身份证号码不存在");
//检查身份证号码格式
$.validator.addMethod("checkIDCardFormat", function (value, element) {
if ($("#IDType").val() == "1")//为身份证号码时
{
var msg = ""
, IDCardObj = {}
, Birthday = ""
, Sex = ""
, Age = "";
IDCardObj = new IDCard();
msg = IDCardObj.CheckIdCard(value);
if (msg != "验证通过!") {
$.validator.messages.checkIDCardFormat = msg;
return false;
} else {
//得到生日,性别,年龄
Birthday = IDCardObj.GetBirthday(value);
Sex = IDCardObj.GetSex(value);
Age = IDCardObj.GetAge(value);
$("#Birthday").val(Birthday);
$("#Sex").val(Sex == "M" ? "true" : "false");
$("#form_BasicInfo input[name='Age']").val(Age);
return true;
}
} else {
return true;
}
});
//检查字符数量汉字(算两个字符)
$.validator.addMethod("checkNumber", function (value, element) {
var num = 0; //总个数累加判断
for (var i = 0; i < value.length; i++) {
//根据charCodeAt来判断输入的是中文还是字母,符号
var charCode = value.charCodeAt(i);
if (charCode >= 0 && charCode <= 128) {
//字符就+1
num += 1;
} else {
//汉子就+2
num += 2;
}
};
if (num > 5) {
return false;
} else {
return true;
} }, "<font color='#E47068'>最多可以输入5个字符,汉字(算两个)</font>"); $.validator.addMethod("checkDateFormat", function (value, element, params) {
var reg = /^(?:(?!0000)[0-9]{4}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)-02-29)$/;
if (this.optional(element) || reg.test(value)) {
if (params[0] == true && reg.test(value)) {//计算年龄
var Age = new IDCard().GetAgeByDate(value);
$("input[name='Age']").val(Age);
}
return true;
} else {
return false;
}
}, "时间格式有误"); //定义错误提示出现的位置
$.validator.setDefaults({
errorPlacement: function (error, element) {//error为错误提示对象,element为出错的组件对象
if (element.parent(".date").size() > 0) {
error.appendTo(element.parent().parent());
} else {
element.after(error);//默认是加在 输入框的后面。这个else必须写。不然其他非radio的组件 就无法显示错误信息了。
}
}
});

jquery validate自定义规则的更多相关文章

  1. jQquery.validate自定义规则的使用案例

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  2. jQuery.Validate自定义规程的使用案例

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. jquery validate 自定义验证方法

    query validate有很多验证规则,但是更多的时候,需要根据特定的情况进行自定义验证规则. 这里就来聊一聊jquery validate的自定义验证. jquery validate有一个方法 ...

  4. jquery validate 自定义验证方法 日期验证

    jquery validate有很多验证规则,但是更多的时候,需要根据特定的情况进行自定义验证规则. 这里就来聊一聊jquery validate的自定义验证. jquery validate有一个方 ...

  5. JQuery validate验证规则

    //定义中文消息 var cnmsg = { required: “必选字段”, remote: “请修正该字段”, email: “请输入正确格式的电子邮件”, url: “请输入合法的网址”, d ...

  6. Jquery Validate自定义验证规则,一个汉字等于两个字符长度

    使用Jquery validate时写的一些东西,在这里做个笔记 在使用 Jquery validate 的minlength和maxlength进行文本框内容长度验证的时候,对于一个汉字的长度检测结 ...

  7. jQuery Validate自定义各种验证方法(转)

    一.封装自定义验证方法-validate-methods.js /***************************************************************** j ...

  8. 扩展jquery.validate自定义验证,自定义提示,本地化

    <!DOCTYPE html> <html> <head> <meta name="viewport" content="wid ...

  9. jQuery Validate自定义金钱验证,是否为金额格式,保留两位小数,并支持千分制货币格式

    //自定义函数实现 isMoney: function (value, element){ // return this.optional(element) || /(^[1-9]([0-9]+)?( ...

随机推荐

  1. Zero Downtime Upgrade of Oracle 10g to Oracle 11g Using GoldenGate — 4

    Target Side Setup Install OGG on Target Side Creates required directories for OGG [oracle@vzwc1 ggs] ...

  2. [tools]python的mkdocs模块分分钟将md搞成一个网站

    docusaurus: facebook出的一个文档生成器,用起来感觉没那么友善 hugo: 这个很棒 python的mkdocs模块: 用起来最简单 python的这个模块可以分分钟将一坨md假设成 ...

  3. 【Android】12.5 利用Intent读取和更新通讯录

    分类:C#.Android.VS2015: 创建日期:2016-02-23 修改日期:2016-03-08更正了未关闭cursor的bug.  一.简介 本节演示如何在安卓系统中通过用户配置文件(us ...

  4. 服务器swap

    交换区(swap)是存在于高速存储设 备上的一块区域,是虚拟内存系统重要的组成部分.通过交换区,我们不再局限于有限的物理内存空间,理论上可以无限地扩大虚拟内存系统,从而运行更多的程 序,进行更多的业务 ...

  5. zabbix 源

    http://repo.zabbix.com/ # cat /etc/yum.repos.d/zabbix.repo [zabbix] name=Zabbix Official Repository ...

  6. 每日英语:Our Unique Obsession With Rover And Fluffy

    Recently, an almost literal case of lifeboat ethics occurred. On Aug. 4, Graham and Sheryl Anley, wh ...

  7. python(24)下载文件

    利用程序自己编写下载文件挺有意思的.Python中最流行的方法就是通过Http利用urllib或者urllib2模块.当然你也可以利用ftplib从ftp站点下载文件.此外Python还提供了另外一种 ...

  8. 对JAVASCRIPT匿名函数的理解

    网上很多解释,我无法理解,我想知道原理...这篇文章应该可以透彻一点 Query片段: (function(){ //这里忽略jQuery所有实现 })(); 要说匿名函数,我们首先要由函数本身说起. ...

  9. weblogic连接池问题总结(转载)

    转自:某局Weblogic 连接池问题(现场报告)(Connection has been administratively disabled. Try later.) 目录 1. 概述 3 1.1 ...

  10. css3实现的鼠标经过按钮特效

    今天要为各网友再带来一款css实现的鼠标经过按钮的特效.按钮初始时,边框为断开的按钮,当鼠标经过按钮时动画变为封闭的边框.效果图如下: 在线预览   源码下载 我们一起看下实现的代码: html代码: ...