jQuery.validate.js API
Name Type
validate( options ) Returns: Validator
验证所选的FORM
valid( ) Returns: Boolean
检查是否验证通过
rules( ) Returns: Options
返回元素的验证规则
rules( "add", rules ) Returns: Options
增加验证规则。
rules( "remove", rules ) Returns: Options
删除验证规则
removeAttrs( attributes ) Returns: Options
删除特殊属性并且返回他们
Custom selectors
Name TypeCustom selectors:
Name Type
:blank Returns: Array
没有值的筛选器
:filled Returns: Array
有值的筛选器
: unchecked Returns: Array
没选择的元素的筛选器
Utilities
Name TypeString utilities:
Name Type
jQuery.format( template, argument , argumentN... ) Returns: String
用参数代替模板中的 {n}。
Validator
validate方法返回一个Validator对象, 它有很多方法, 让你能使用引发校验程序或者改变form的内容. validator对象有很多方法, 但下面只是列出常用的.
Name TypeValidator methods:
Name Type
form( ) Returns: Boolean
验证form返回成功还是失败
element( element ) Returns: Boolean
验证单个元素是成功还是失败
resetForm( ) Returns: undefined
把前面验证的FORM恢复到验证前原来的状态
showErrors( errors ) Returns: undefined
显示特定的错误信息
There are a few static methods on the validator object:
Name TypeValidator functions:
Name Type
setDefaults( defaults ) Returns: undefined
改变默认的设置
addMethod( name, method, message ) Returns: undefined
添加一个新的验证方法. 必须包括一个独一无二的名字,一个JAVASCRIPT的方法和一个默认的信息
addCla***ules( name, rules ) Returns: undefined
增加组合验证类型 在一个类里面用多种验证方法里比较有用
addCla***ules( rules ) Returns: undefined
增加组合验证类型 在一个类里面用多种验证方法里比较有用,这个是一下子加多个[edit ]
List of built- in Validation methods
A set of standard validation methods is provided:
Name TypeMethods:
Name Type
required( ) Returns: Boolean
必填验证元素
required( dependency-expression ) Returns: Boolean
必填元素依赖于表达式的结果.
required( dependency-callback ) Returns: Boolean
必填元素依赖于回调函数的结果.
remote( url ) Returns: Boolean
请求远程校验。url通常是一个远程调用方法
minlength( length ) Returns: Boolean
设置最小长度
maxlength( length ) Returns: Boolean
设置最大长度
rangelength( range ) Returns: Boolean
设置一个长度范围[min,max]
min( value ) Returns: Boolean
设置最小值.
max( value ) Returns: Boolean
设置最大值.
range( range ) Returns: Boolean
设置值的范围
email( ) Returns: Boolean
验证电子邮箱格式
url( ) Returns: Boolean
验证连接格式
date( ) Returns: Boolean
验证日期格式(类似30/30/2008的格式,不验证日期准确性只验证格式)
dateISO( ) Returns: Boolean
研制ISO类型的日期格式
dateDE( ) Returns: Boolean
验证德式的日期格式(29.04.1994 or 1.1.2006)
number( ) Returns: Boolean
验证十进制数字(包括小数的)
numberDE( ) Returns: Boolean
Makes the element require a decimal number with german format.
digits( ) Returns: Boolean
验证整数
creditcard( ) Returns: Boolean
验证信用卡号
accept( extension ) Returns: Boolean
验证相同后缀名的字符串
equalTo( other ) Returns: Boolean
验证两个输入框的内容是否相同
Name Type
phoneUS( ) Returns: Boolean
验证美式的电话号码
validate ()的可选项
debug:进行调试模式
$( ".selector").validate
({
debug: true
})
把调试设置为默认
$.validator.setDefaults({
debug: true
})
submitHandler:用其他方式替代默认的SUBMIT,比如用AJAX的方式提交
$( ".selector").validate({
submitHandler: function(form) {
$(form).ajaxSubmit();
}
})
ignore:忽略某些元素不验证
$( "#myform").validate({
ignore: ".ignore"
})
rules: 默认下根据form的classes, attributes, metadata判断,但也可以在validate函数里面声明
Key/value 可自定义规则. Key是对象的名字 value是对象的规则,可以组合使用 class/attribute/metadata rules.
以下代码特别验证selector类中name='name'是必填项并且 email是既是必填又要符合email的格式
$( ".selector").validate({
rules: {
// simple rule, converted to {required:true}
name: "required",
// compound rule
email: {
required: true,
email: true
}
}
})
messages:更改默认的提示信息
$( ".selector").validate({
rules: {
name: "required",
email: {
required: true,
email: true
}
},
messages: {
name: "Please specify your name",
email: {
required: "We need your email address to contact you",
email: "Your email address must be in the format of [email protected]"
}
}
})
groups:定义一个组,把几个地方的出错信息同意放在一个地方,用error Placement控制把出错信息放在哪里
$( "#myform").validate({
groups: {
username: "fname lname"
},
errorPlacement: function(error, element) {
if (element.attr( "name") == "fname" || element.attr( "name") == "lname" )
error.insertAfter( "#lastname");
else
error.insertAfter(element);
},
debug: true
})
nsubmit Boolean Default: true
提交时验证. 设置唯 false就用其他方法去验证
Code
不用onsubmit验证,就允许用户无论用什么方法去验证,而是提交时, 用 keyup/blur/click 等方法.
$( ".selector").validate({
onsubmit: false
})
onfocusout Boolean Default: true
Validate elements (except checkboxes/radio buttons) on blur. If nothing is entered, all rules are skipped, except when the field was already marked as invalid.
Code
Disables onblur validation.
$( ".selector").validate({
onfocusout: false
})
onkeyup Boolean Default: true
在keyup时验证. As long as the field is not marked as invalid, nothing happens. Otherwise, all rules are checked on each key up event.
Code
Disables onkeyup validation.
$( ".selector").validate({
onkeyup: false
})
onclick Boolean Default: true
在checkboxes 和 radio 点击时验证.
Code
Disables onclick validation of checkboxes and radio buttons.
$( ".selector").validate({
false
})
focusInvalid Boolean Default: true
把焦点聚焦在最后一个动作或者最近的一次出错上via validator.focusInvalid(). The last active element is the one that had focus when the form was submitted, avoiding to steal its focus. If there was no element focused, the first one in the form gets it, unless this option is turned off.
Code
Disables focusing of invalid elements.
$( ".selector").validate({
focusInvalid: false
})
focusCleanup Boolean Default: false
如果是 true那么删除出错类从出错的元素上并且隐藏出错信息当这个元素被聚焦 .避免和 focusInvalid.一起用
Code
Enables cleanup when focusing elements, removing the error class and hiding error messages when an element is focused.
$( ".selector").validate({
focusCleanup: true
})
meta String
为了元数据使用其他插件你要包装 你的验证规则 在他们自己的项目中可以用这个特殊的选项
Tell the validation plugin to look inside a validate-property in metadata for validation rules.
$( "#myform").validate({
meta: "validate",
submitHandler: function() { alert( "Submitted!") }
})
"-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
"http://code.jquery.com/jquery-latest.js" mce_src="http://code.jquery.com/jquery-latest.js">
"text/javascript">
"text/javascript" src="http://dev.jquery.com/view/trunk/plugins/validate/lib/jquery.metadata.js" mce_src="http://dev.jquery.com/view/trunk/plugins/validate/lib/jquery.metadata.js">
"text/javascript" src="http://dev.jquery.com/view/trunk/plugins/validate/jquery.validate.js" mce_src="http://dev.jquery.com/view/trunk/plugins/validate/jquery.validate.js">
errorClass String Default: "error"
创建错误类的名字为了去寻找存在的错误标签和增加它到验证失败的元素中去。
Code
Sets the error class to "invalid".
$(".selector").validate({
errorClass: "invalid"
})
errorElement String Default: "label"
设置错误的元素,默认的是label你可以改成em.Use this element type to create error messages and to look for existing error messages. The default, "label", has the advantage of creating a meaningful link between error message and invalid field using the for attribute (which is always used, no matter the element type).
Code
Sets the error element to "em".
$(".selector").validate
errorElement: "em"
})
wrapper String
在出错信息外用其他的元素包装一层。Wrap error labels with the specified element. Useful in combination with errorLabelContainer to create a list of error messages.
Code
Wrap each error element with a list item, useful when using an ordered or unordered list as the error container.
$(".selector").validate({
wrapper: "li"
})
errorLabelContainer Selector
把错误信息统一放在一个容器里面。Hide and show this container when validating.
All error labels are displayed inside an unordered list with the ID "messageBox", as specified by the selector passed as errorContainer option. All error elements are wrapped inside an li element, to create a list of messages.
$("#myform").validate({
errorLabelContainer: "#messageBox",
wrapper: "li",
submitHandler: function() { alert("Submitted!") }
})
Name Type
validate( options ) Returns: Validator
验证所选的FORM
valid( ) Returns: Boolean
检查是否验证通过
rules( ) Returns: Options
返回元素的验证规则
rules( "add", rules ) Returns: Options
增加验证规则。
rules( "remove", rules ) Returns: Options
删除验证规则
removeAttrs( attributes ) Returns: Options
删除特殊属性并且返回他们
Custom selectors
Name TypeCustom selectors:
Name Type
:blank Returns: Array
没有值的筛选器
:filled Returns: Array
有值的筛选器
: unchecked Returns: Array
没选择的元素的筛选器
Utilities
Name TypeString utilities:
Name Type
jQuery.format( template, argument , argumentN... ) Returns: String
用参数代替模板中的 {n}。
Validator
validate方法返回一个Validator对象, 它有很多方法, 让你能使用引发校验程序或者改变form的内容. validator对象有很多方法, 但下面只是列出常用的.
Name TypeValidator methods:
Name Type
form( ) Returns: Boolean
验证form返回成功还是失败
element( element ) Returns: Boolean
验证单个元素是成功还是失败
resetForm( ) Returns: undefined
把前面验证的FORM恢复到验证前原来的状态
showErrors( errors ) Returns: undefined
显示特定的错误信息
There are a few static methods on the validator object:
Name TypeValidator functions:
Name Type
setDefaults( defaults ) Returns: undefined
改变默认的设置
addMethod( name, method, message ) Returns: undefined
添加一个新的验证方法. 必须包括一个独一无二的名字,一个JAVASCRIPT的方法和一个默认的信息
addCla***ules( name, rules ) Returns: undefined
增加组合验证类型 在一个类里面用多种验证方法里比较有用
addCla***ules( rules ) Returns: undefined
增加组合验证类型 在一个类里面用多种验证方法里比较有用,这个是一下子加多个[edit ]
List of built- in Validation methods
A set of standard validation methods is provided:
Name TypeMethods:
Name Type
required( ) Returns: Boolean
必填验证元素
required( dependency-expression ) Returns: Boolean
必填元素依赖于表达式的结果.
required( dependency-callback ) Returns: Boolean
必填元素依赖于回调函数的结果.
remote( url ) Returns: Boolean
请求远程校验。url通常是一个远程调用方法
minlength( length ) Returns: Boolean
设置最小长度
maxlength( length ) Returns: Boolean
设置最大长度
rangelength( range ) Returns: Boolean
设置一个长度范围[min,max]
min( value ) Returns: Boolean
设置最小值.
max( value ) Returns: Boolean
设置最大值.
range( range ) Returns: Boolean
设置值的范围
email( ) Returns: Boolean
验证电子邮箱格式
url( ) Returns: Boolean
验证连接格式
date( ) Returns: Boolean
验证日期格式(类似30/30/2008的格式,不验证日期准确性只验证格式)
dateISO( ) Returns: Boolean
研制ISO类型的日期格式
dateDE( ) Returns: Boolean
验证德式的日期格式(29.04.1994 or 1.1.2006)
number( ) Returns: Boolean
验证十进制数字(包括小数的)
numberDE( ) Returns: Boolean
Makes the element require a decimal number with german format.
digits( ) Returns: Boolean
验证整数
creditcard( ) Returns: Boolean
验证信用卡号
accept( extension ) Returns: Boolean
验证相同后缀名的字符串
equalTo( other ) Returns: Boolean
验证两个输入框的内容是否相同
Name Type
phoneUS( ) Returns: Boolean
验证美式的电话号码
validate ()的可选项
debug:进行调试模式
$( ".selector").validate
({
debug: true
})
把调试设置为默认
$.validator.setDefaults({
debug: true
})
submitHandler:用其他方式替代默认的SUBMIT,比如用AJAX的方式提交
$( ".selector").validate({
submitHandler: function(form) {
$(form).ajaxSubmit();
}
})
ignore:忽略某些元素不验证
$( "#myform").validate({
ignore: ".ignore"
})
rules: 默认下根据form的classes, attributes, metadata判断,但也可以在validate函数里面声明
Key/value 可自定义规则. Key是对象的名字 value是对象的规则,可以组合使用 class/attribute/metadata rules.
以下代码特别验证selector类中name='name'是必填项并且 email是既是必填又要符合email的格式
$( ".selector").validate({
rules: {
// simple rule, converted to {required:true}
name: "required",
// compound rule
email: {
required: true,
email: true
}
}
})
messages:更改默认的提示信息
$( ".selector").validate({
rules: {
name: "required",
email: {
required: true,
email: true
}
},
messages: {
name: "Please specify your name",
email: {
required: "We need your email address to contact you",
email: "Your email address must be in the format of [email protected]"
}
}
})
groups:定义一个组,把几个地方的出错信息同意放在一个地方,用error Placement控制把出错信息放在哪里
$( "#myform").validate({
groups: {
username: "fname lname"
},
errorPlacement: function(error, element) {
if (element.attr( "name") == "fname" || element.attr( "name") == "lname" )
error.insertAfter( "#lastname");
else
error.insertAfter(element);
},
debug: true
})
nsubmit Boolean Default: true
提交时验证. 设置唯 false就用其他方法去验证
Code
不用onsubmit验证,就允许用户无论用什么方法去验证,而是提交时, 用 keyup/blur/click 等方法.
$( ".selector").validate({
onsubmit: false
})
onfocusout Boolean Default: true
Validate elements (except checkboxes/radio buttons) on blur. If nothing is entered, all rules are skipped, except when the field was already marked as invalid.
Code
Disables onblur validation.
$( ".selector").validate({
onfocusout: false
})
onkeyup Boolean Default: true
在keyup时验证. As long as the field is not marked as invalid, nothing happens. Otherwise, all rules are checked on each key up event.
Code
Disables onkeyup validation.
$( ".selector").validate({
onkeyup: false
})
onclick Boolean Default: true
在checkboxes 和 radio 点击时验证.
Code
Disables onclick validation of checkboxes and radio buttons.
$( ".selector").validate({
false
})
focusInvalid Boolean Default: true
把焦点聚焦在最后一个动作或者最近的一次出错上via validator.focusInvalid(). The last active element is the one that had focus when the form was submitted, avoiding to steal its focus. If there was no element focused, the first one in the form gets it, unless this option is turned off.
Code
Disables focusing of invalid elements.
$( ".selector").validate({
focusInvalid: false
})
focusCleanup Boolean Default: false
如果是 true那么删除出错类从出错的元素上并且隐藏出错信息当这个元素被聚焦 .避免和 focusInvalid.一起用
Code
Enables cleanup when focusing elements, removing the error class and hiding error messages when an element is focused.
$( ".selector").validate({
focusCleanup: true
})
meta String
为了元数据使用其他插件你要包装 你的验证规则 在他们自己的项目中可以用这个特殊的选项
Tell the validation plugin to look inside a validate-property in metadata for validation rules.
$( "#myform").validate({
meta: "validate",
submitHandler: function() { alert( "Submitted!") }
})
"-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
errorClass String Default: "error"
创建错误类的名字为了去寻找存在的错误标签和增加它到验证失败的元素中去。
Code
Sets the error class to "invalid".
$(".selector").validate({
errorClass: "invalid"
})
errorElement String Default: "label"
设置错误的元素,默认的是label你可以改成em.Use this element type to create error messages and to look for existing error messages. The default, "label", has the advantage of creating a meaningful link between error message and invalid field using the for attribute (which is always used, no matter the element type).
Code
Sets the error element to "em".
$(".selector").validate
errorElement: "em"
})
wrapper String
在出错信息外用其他的元素包装一层。Wrap error labels with the specified element. Useful in combination with errorLabelContainer to create a list of error messages.
Code
Wrap each error element with a list item, useful when using an ordered or unordered list as the error container.
$(".selector").validate({
wrapper: "li"
})
errorLabelContainer Selector
把错误信息统一放在一个容器里面。Hide and show this container when validating.
All error labels are displayed inside an unordered list with the ID "messageBox", as specified by the selector passed as errorContainer option. All error elements are wrapped inside an li element, to create a list of messages.
$("#myform").validate({
errorLabelContainer: "#messageBox",
wrapper: "li",
submitHandler: function() { alert("Submitted!") }
})