//检查身份证号码是否存在
$.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. 国际化模块 angular-translate 简单方便快捷翻译中英文等多语言环境

    很多web服务面对的不仅仅是当地用户,多语言环境不仅能提升逼格,更重要是一种用户体验. angular.js 作为前后端拆分的解决方案之一,当然离不开前端框架处理国际化的问题,angular.js 官 ...

  2. JavaScript:表单常用验证脚本(整理)

    以下内容根据网上资源整理而来,主要来源是CSDN一个供下载的check.js,源码地址找不到了. 1. 检查输入字符串是否为空或者全部都是空格 /* 检查输入字符串是否为空或者全部都是空格 输入:st ...

  3. mongoose中的versionKey

    通过mongoose中的save方法保存记录时document文档默认最后会有一个字段"__v",这个字段表示该文档是否是刚刚创建的,如果是则字段"__v"的值 ...

  4. cocos2d-x Schedule详解

    原理介绍 Cocos2d-x调度器为游戏提供定时事件和定时调用服务.所有Node对象都知道如何调度和取消调度事件,使用调度器有几个好处: 每当Node不再可见或已从场景中移除时,调度器会停止. Coc ...

  5. MySQL常见的库操作,表操作,数据操作集锦及一些注意事项

    一 库操作(文件夹) 1 数据库命名规则 可以由字母.数字.下划线.@.#.$ 区分大小写 唯一性 不能使用关键字如 create select 不能单独使用数字 最长128位 2 数据库相关操作 创 ...

  6. shell echo -n md5sum使用方法

    #!/bin/bash MYSQL='mysql -u*** -p*** -hws5 account' tmp="tmp" resultsource="resultsou ...

  7. System.Data.SqlClient.SqlError:无法打开备份设备'D:\..\abc.bak'

    在SQL Server中备份数据库时遇到备份对于服务器“服务器名”失败. (Microsoft.SqlServer.Smo)其他信息:System.Data.SqlClient.SqlError:无法 ...

  8. db2 查看进程 db2中的常用命令及使用方法

    一 高(重要度) 1 启动一个db 2实例使用: net start instanceName 2 停止一个db 2实例使用: net stop instanceName 3 启动配置助手: db2= ...

  9. 创建一个动态链接库 (DLL),使用VS2010

    在本演练中,您将创建一个动态链接库 (DLL),其中包含可供其他应用程序使用的有用例程.使用 DLL 是一种重用代码的绝佳方式.您不必在自己创建的每个程序中重新实现这些例程,而只需对这些例程编写一次, ...

  10. 【Unity笔记】碰撞器(Collision)与触发器(Trigger)的区别

    当碰撞器Collision组件身上的属性IsTrigger勾选为True时,该碰撞器就成了触发器. 区别:1.能够产生的回调和函数不同.碰撞器:MonoBehaviour.OnCollisionEnt ...