jquery validate.addMethod 正则表达式 (自定义验证方法)
项目中使用的jQuery添加的校验的方法
$(document).ready(function(){
5
6
/* 设置默认属性 */
7
$.validator.setDefaults({
8
submitHandler: function(form) {
9
form.submit();
10
}
11
});
12
13
// 字符验证
14
jQuery.validator.addMethod("stringCheck", function(value, element) {
15
return this.optional(element) || /^[\u0391-\uFFE5\w]+$/.test(value);
16
}, "只能包括中文字、英文字母、数字和下划线");
17
18
// 中文字两个字节
19
jQuery.validator.addMethod("byteRangeLength", function(value, element, param) {
20
var length = value.length;
21
for(var i = 0; i < value.length; i++){
22
if(value.charCodeAt(i) > 127){
23
length++;
24
}
25
}
26
return this.optional(element) || ( length >= param[0] && length <= param[1] );
27
}, "请确保输入的值在3-15个字节之间(一个中文字算2个字节)");
28
29
// 身份证号码验证
30
jQuery.validator.addMethod("isIdCardNo", function(value, element) {
31
return this.optional(element) || isIdCardNo(value);
32
}, "请正确输入您的身份证号码");
33
34
// 手机号码验证
35
jQuery.validator.addMethod("isMobile", function(value, element) {
36
var length = value.length;
37
var mobile = /^(((13[0-9]{1})|(15[0-9]{1}))+\d{8})$/;
38
return this.optional(element) || (length == 11 && mobile.test(value));
39
}, "请正确填写您的手机号码");
40
41
// 电话号码验证
42
jQuery.validator.addMethod("isTel", function(value, element) {
43
var tel = /^\d{3,4}-?\d{7,9}$/; //电话号码格式010-12345678
44
return this.optional(element) || (tel.test(value));
45
}, "请正确填写您的电话号码");
46
47
// 联系电话(手机/电话皆可)验证
48
jQuery.validator.addMethod("isPhone", function(value,element) {
49
var length = value.length;
50
var mobile = /^(((13[0-9]{1})|(15[0-9]{1}))+\d{8})$/;
51
var tel = /^\d{3,4}-?\d{7,9}$/;
52
return this.optional(element) || (tel.test(value) || mobile.test(value));
53
54
}, "请正确填写您的联系电话");
55
56
// 邮政编码验证
57
jQuery.validator.addMethod("isZipCode", function(value, element) {
58
var tel = /^[0-9]{6}$/;
59
return this.optional(element) || (tel.test(value));
60
}, "请正确填写您的邮政编码");
61
62
//开始验证
63
$('#submitForm').validate({
64
/* 设置验证规则 */
65
rules: {
66
username: {
67
required:true,
68
stringCheck:true,
69
byteRangeLength:[3,15]
70
},
71
email:{
72
required:true,
73
email:true
74
},
75
phone:{
76
required:true,
77
isPhone:true
78
},
79
address:{
80
required:true,
81
stringCheck:true,
82
byteRangeLength:[3,100]
83
}
84
},
85
86
/* 设置错误信息 */
87
messages: {
88
username: {
89
required: "请填写用户名",
90
stringCheck: "用户名只能包括中文字、英文字母、数字和下划线",
91
byteRangeLength: "用户名必须在3-15个字符之间(一个中文字算2个字符)"
92
},
93
email:{
94
required: "请输入一个Email地址",
95
email: "请输入一个有效的Email地址"
96
},
97
phone:{
98
required: "请输入您的联系电话",
99
isPhone: "请输入一个有效的联系电话"
100
},
101
address:{
102
required: "请输入您的联系地址",
103
stringCheck: "请正确输入您的联系地址",
104
byteRangeLength: "请详实您的联系地址以便于我们联系您"
105
}
106
},
107
108
/* 设置验证触发事件 */
109
focusInvalid: false,
110
onkeyup: false,
111
112
/* 设置错误信息提示DOM */
113
errorPlacement: function(error, element) {
114
error.appendTo( element.parent());
115
},
116
117
});
118
119
});
supplier-commons-vacation.js
//定义订单的公共的函数方法
function define_common_method(){
//设置默认的操作
$.validator.setDefaults({
submitHandler: function(form) { form.submit(); }
});
//添加自定义校验函数
$.validator.addMethod("charNo",function(value,element) {
var length = value.length;
var your_tel =/[\W]/g;
return this.optional(element) || (length<=8&&!your_tel.test(value));
},"请输入英文字符或数字!");
//添加验证操作名称的校验函数
$.validator.addMethod("charString",function(value,element) {
var length = value.length;
var your_tel =/[^\a-zA-Z\u4E00-\u9FA5]/g;
var your_tel2=/^[A-Za-z]*$/;
return this.optional(element) || (length<=20&&!your_tel.test(value));
},"请输入中文或英文名称");
//验证手机号码(仅仅13和15开头)
$.validator.addMethod("isPhone", function(value,element) {
var length = value.length;
var mobile = /^(((13[0-9]{1})|(15[0-9]{1}))+\d{8})$/;
var tel = /^\d{3,4}-?\d{7,9}$/;
return this.optional(element) || (tel.test(value) || mobile.test(value));
}, "请正确填写您的联系电话或者手机");
}
supplier-finance.js
jQuery(function($) {
//绑定所有的事件
$(document).ready(function() {
bind_component_event();
});
//绑定的公共的事件
function bind_component_event() {
//定义一些公共的方法
define_common_method();
//环游供应商付款的验证(度假)
bind_checkCondition_component_event();
//环游供应商付款验证的(供应商)
bind_supplierConditionForm_component_event();
}
//环游供应商付款(度假)的验证
function bind_checkCondition_component_event() {
//待收款款订单验证
$("#checkConditionForm").validate({
event: "submit",
errorPlacement: function(error, element) {
},
rules:{
"searchCon.accountNo":{
charNo:true
},
"searchCon.supplierName":{
charString:true
}
},
messages:{
"searchCon.accountNo":{
charNo:"请输入正确的对账编号!"
},
"searchCon.supplierName":{
charString:"请输入正确的供应商名称!"
}
},
//设置验证触发事件
focusInvalid:false,
onkeyup:false,
//设置错误信息提示DOM
errorPlacement:function(error,element){
error.appendTo(element.parent());
}
});
}
//环游供应商付款的验证(供应商)
function bind_supplierConditionForm_component_event() {
//待收款款订单验证
$("#supplierConditionForm").validate({
event: "submit",
errorPlacement: function(error, element) {
},
rules:{
"searchCon.accountNo":{
charNo:true
},
"searchCon.supplierName":{
charString:true
}
},
messages:{
"searchCon.accountNo":{
charNo:"请输入正确的对账编号!"
},
"searchCon.supplierName":{
charString:"请输入正确的供应商名称!"
}
},
//设置验证触发事件
focusInvalid:false,
onkeyup:false,
//设置错误信息提示DOM
errorPlacement:function(error,element){
error.appendTo(element.parent());
}
});
}
});
关于jQuery的校验的API
http://docs.jquery.com/Plugins/Validation/Validator/addMethod
http://www.shopxx.net/html/news/2009/1201/59.html
http://jquery.bassistance.de/api-browser/plugins.html
jquery validate.addMethod 正则表达式 (自定义验证方法)的更多相关文章
- jquery.validate remote 和 自定义验证方法
jquery.validate remote 和 自定义验证方法 $(function(){ var validator = $("#enterRegForm").validate ...
- jquery validate.addMethod 正则表达式
$(document).ready(function () { /* 设置默认属性 */ $.validator.setDefaults( { submitHandler: function (for ...
- jQuery.validator.addMethod自定义验证方法
在开发中用到了jQuery的validate控件,有时需要自定义验证方法.我们可以通过jQuery.validator.addMethod()来实现,下面是例子: <!DOCTYPE html ...
- jqery validate、validate自定义验证方法 + jaery form Demo
校验规则 required:true 必输字段 remote:"check.php" 使用ajax方法调用check.php验证输入值 email:true 必须输入正确格式 ...
- validate插件深入学习-04自定义验证方法
自定义验证方法 jQuery.validator.addMethod(name,method,[,message]) name: 方法名 method: function(value,element, ...
- jquery.validate.js表单验证
一.用前必备官方网站:http://bassistance.de/jquery-plugins/jquery-plugin-validation/ API: http://jquery.bassist ...
- 【转】jquery.validate.js表单验证
一.用前必备官方网站:http://bassistance.de/jquery-plugins/jquery-plugin-validation/ API: http://jquery.bassist ...
- [转]jquery.validate.js表单验证
原文地址:https://www.cnblogs.com/si-shaohua/p/3780321.html 一.用前必备官方网站:http://bassistance.de/jquery-plugi ...
- Jquery.validate.js表单验证插件的使用
作为一个网站web开发人员,以前居然不知道还有表单验证这样好呀的插件,还在一行行写表单验证,真是后悔没能早点知道他们的存在. 最近公司不忙,自己学习一些东西的时候,发现了validation的一个实例 ...
随机推荐
- eclipse中的两种Jre 及 Jre与Jdk的区别
分类: ——————————区分eclipse中的两种Jre———————- (Eclipse也是一个普通的Java程序,因此必须有一个JRE做为运行环境.如果你的机器上没有安装任何JRE(或者JDK ...
- Aix 文件名补齐及aix6.1 bash安装
Aix历史查询快捷键=>按ESC+k 设置KSH的自动补全(仅仅是文件名补全,没有命令补全)和历史命令功能 方法一: set -o vi 历史命令功能(esc -,esc +)自动补全文件名(e ...
- CocoaPods的安装及安装出现问题的处理
ocoaPods安装分两步:第一步.修改本机的Ruby环境:第二步.安装. 第一步:步骤1.打开终端输入 gem sources -l 查看本机的Ruby环境:若显示“https://ruby ...
- hdu 5256 序列变换 (LIS变形)
序列变换 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...
- Java设计模式--------建造者模式(Builder模式)
Builder模式定义:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示. Builder模式是一步一步创建一个复杂的对象,它允许用户可以只通过指定复杂对象的类型和内容就可以构 ...
- sql 查询结果中加入空值列
select a,b,c,''d from X; 其中d为新加列,''表示默认值为空值 原文:http://hi.baidu.com/ddduggguo/item/747d5ba5ca18fd2689 ...
- 12个CSS高级技巧汇总
1.使用 :not() 在菜单上应用/取消应用边框 先给每一个菜单项添加边框 CSS Code复制内容到剪贴板 /* add border */ .nav li { border-right: 1px ...
- jQuery源码笔记——三
将类数组对象转化为数组对象 javascript中有许多类数组对象,比如HTMLCollection,NodeList,arguments.她们的特点是和数组一样有length属性,并且有0,1,2这 ...
- 得到文件的MD5值
/// <summary> /// 得到文件的MD5值 /// </summary> /// <param name="Path">文件路径&l ...
- 8种排序算法的C#实现
排序是将一个数据元素(或记录)的任意序列,重新排列成一个按关键字有序的序列.排序根据涉及的存储器的不同分为内部排序和外部排序:内部排序是指待排序记录存放在内存进行的排序过程:外部排序是指待排序记录的数 ...