//检查身份证号码是否存在
$.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. [hihoCoder] #1081 : 最短路径·一

    时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 万圣节的早上,小Hi和小Ho在经历了一个小时的争论后,终于决定了如何度过这样有意义的一天——他们决定去闯鬼屋! 在鬼屋门口 ...

  2. MYSQL加入远程用户或同意远程訪问三种方法

    加入远程用户admin密码为password GRANT ALL PRIVILEGES ON *.* TO admin@localhost IDENTIFIED BY \'password\' WIT ...

  3. js检查页面上有无重复id的代码分享

    用js代码检查一个页面上是否用重复的id. 方法一: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" ...

  4. [机器学习] ML重要概念:梯度(Gradient)与梯度下降法(Gradient Descent)

    引言 机器学习栏目记录我在学习Machine Learning过程的一些心得笔记,涵盖线性回归.逻辑回归.Softmax回归.神经网络和SVM等等,主要学习资料来自网上的免费课程和一些经典书籍,免费课 ...

  5. Linux下C语言使用openssl库进行加密

    在这里插一小节加密的吧,使用openssl库进行加密. 使用MD5加密 我们以一个字符串为例,新建一个文件filename.txt,在文件内写入hello ,然后在Linux下可以使用命令md5sum ...

  6. 快速了解Log4J (转)

    http://liuzhijun.iteye.com/blog/1746571 ***************************************** Log4J的三个组件: Logger ...

  7. 使用yum时出现的404

    今天使用yum升级nss yum update nss 结果爆出错误: http://people.centos.org/tru/devtools-2/6Server/x86_64/RPMS/repo ...

  8. Session 活化与钝化 与tomcat钝化驱动器

    1,绑定到Session中的 对象有多种状态,分别是   绑定   解除绑定     钝化    活化. 绑定 是保存,通过session.setattribute把对象保存到session的对象当中 ...

  9. win7下wifi密码的保存路径

    win7下wifi保存在C:\ProgramData\Microsoft\Wlansvc\Profiles\Interfaces目录下的配置文件中,xml配置文件 <?xml version=& ...

  10. 一款基于javascript的3D玻璃破碎特效

    之前为大家介绍了一款 html5 canvas实现图片玻璃碎片特效.今天要给大家带来一款基于javascript的3D玻璃破碎特效.效果图如下: 在线预览   源码下载 html代码: <div ...