名稱
|
返回類型
|
描述
|
validate(options)
|
返回:Validator
|
驗(yàn)證所選的FORM
|
valid()
|
返回:Boolean
|
檢查是否驗(yàn)證通過
|
rules()
|
返回:Options
|
返回元素的驗(yàn)證規(guī)則
|
rules("add",rules)
|
返回:Options
|
增加驗(yàn)證規(guī)則
|
rules("remove",rules)
|
返回:Options
|
刪除驗(yàn)證規(guī)則
|
removeAttrs(attributes)
|
返回:Options
|
刪除特殊屬性并且返回他們
|
Custom selectors
|
:blank
|
返回:Validator
|
沒有值的篩選器
|
:filled
|
返回:Array <Element >
|
有值的篩選器
|
:unchecked
|
返回:Array <Element >
|
沒選擇的元素的篩選器
|
Utilities
|
jQuery.format
(template,argument ,argumentN...)
|
返回:String
|
用參數(shù)代替模板中的 {n}
|
Validator:
|
validate方法返回一個(gè)Validator對象,它有很多方法, 讓你能使用引發(fā)校驗(yàn)程序或者改變form的內(nèi)容. validator對象有很多方法,但下面只是列出常用的
|
form()
|
返回:Boolean
|
驗(yàn)證form返回成功還是失敗
|
element(element)
|
返回:Boolean
|
驗(yàn)證單個(gè)元素是成功還是失敗
|
resetForm()
|
返回:undefined
|
把前面驗(yàn)證的FORM恢復(fù)到驗(yàn)證前原來的狀態(tài)
|
showErrors(errors)
|
返回:undefined
|
顯示特定的錯(cuò)誤信息
|
|
Validator functions:
|
setDefaults(defaults)
|
返回:undefined
|
改變默認(rèn)的設(shè)置
|
addMethod(name,method,message)
|
返回:undefined
|
添加一個(gè)新的驗(yàn)證方法. 必須包括一個(gè)獨(dú)一無二的名字,一個(gè)JAVASCRIPT的方法和一個(gè)默認(rèn)的信息
|
addClassRules(name,rules)
|
返回:undefined
|
增加組合驗(yàn)證類型 在一個(gè)類里面用多種驗(yàn)證方法里比較有用
|
addClassRules(rules)
|
返回:undefined
|
增加組合驗(yàn)證類型 在一個(gè)類里面用多種驗(yàn)證方法里比較有用,這個(gè)是一下子加多個(gè)
|
內(nèi)置驗(yàn)證方式:
|
required()
|
返回:Boolean
|
必填驗(yàn)證元素
|
required(dependency-expression)
|
返回:Boolean
|
必填元素依賴于表達(dá)式的結(jié)果
|
required(dependency-callback)
|
返回:Boolean
|
必填元素依賴于回調(diào)函數(shù)的結(jié)果
|
remote(url)
|
返回:Boolean
|
請求遠(yuǎn)程校驗(yàn)。url通常是一個(gè)遠(yuǎn)程調(diào)用方法
|
minlength(length)
|
返回:Boolean
|
設(shè)置最小長度
|
maxlength(length)
|
返回:Boolean
|
設(shè)置最大長度
|
rangelength(range)
|
返回:Boolean
|
設(shè)置一個(gè)長度范圍[min,max]
|
min(value)
|
返回:Boolean
|
設(shè)置最大值
|
max(value)
|
返回:Boolean
|
設(shè)置最小值
|
email()
|
返回:Boolean
|
驗(yàn)證電子郵箱格式
|
range(range)
|
返回:Boolean
|
設(shè)置值的范圍
|
url()
|
返回:Boolean
|
驗(yàn)證URL格式
|
date()
|
返回:Boolean
|
驗(yàn)證日期格式(類似30/30/2008的格式,不驗(yàn)證日期準(zhǔn)確性只驗(yàn)證格式)
|
dateISO()
|
返回:Boolean
|
驗(yàn)證ISO類型的日期格式
|
dateDE()
|
返回:Boolean
|
驗(yàn)證德式的日期格式(29.04.1994 or 1.1.2006)
|
number()
|
返回:Boolean
|
驗(yàn)證十進(jìn)制數(shù)字(包括小數(shù)的)
|
digits()
|
返回:Boolean
|
驗(yàn)證整數(shù)
|
creditcard()
|
返回:Boolean
|
驗(yàn)證信用卡號
|
accept(extension)
|
返回:Boolean
|
驗(yàn)證相同后綴名的字符串
|
equalTo(other)
|
返回:Boolean
|
驗(yàn)證兩個(gè)輸入框的內(nèi)容是否相同
|
phoneUS()
|
返回:Boolean
|
驗(yàn)證美式的電話號碼
|
validate ()的可選項(xiàng):
|
debug:進(jìn)行調(diào)試模式(表單不提交):
|
$(".selector").validate
({
debug:true
})
|
把調(diào)試設(shè)置為默認(rèn):
|
$.validator.setDefaults({
debug:true
})
|
submitHandler:
通過驗(yàn)證后運(yùn)行的函數(shù),里面要加上表單提交的函數(shù),否則表單不會提交
|
$(".selector").validate({
submitHandler:function(form) {
$(form).ajaxSubmit();
}
})
|
ignore:
對某些元素不進(jìn)行驗(yàn)證
|
$("#myform").validate({
ignore:".ignore"
})
|
rules:
自定義規(guī)則,key:value的形式,key是要驗(yàn)證的元素,value可以是字符串或?qū)ο?span lang=EN-US>
|
$(".selector").validate({
rules:{
name:"required",
email:{
required:true,
email:true
}
}
})
|
messages:
自定義的提示信息key:value的形式key是要驗(yàn)證的元素,值是字符串或函數(shù)
|
$(".selector").validate({
rules:{
name:"required",
email:{
required:true,
email:true
}
},
messages:{
name:"Name不能為空",
email:{
required:"E-mail不能為空",
email:"E-mail地址不正確"
}
}
})
|
groups:
對一組元素的驗(yàn)證,用一個(gè)錯(cuò)誤提示,用error Placement控制把出錯(cuò)信息放在哪里
|
$("#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
})
|
Onubmit Boolean 默認(rèn):true
是否提交時(shí)驗(yàn)證
|
$(".selector").validate({
onsubmit:false
})
|
onfocusout Boolean 默認(rèn):true
是否在獲取焦點(diǎn)時(shí)驗(yàn)證
|
$(".selector").validate({
onfocusout:false
})
|
onkeyup Boolean 默認(rèn):true
是否在敲擊鍵盤時(shí)驗(yàn)證
|
$(".selector").validate({
onkeyup:false
})
|
onclick Boolean 默認(rèn):true
是否在鼠標(biāo)點(diǎn)擊時(shí)驗(yàn)證(一般驗(yàn)證checkbox,radiobox)
|
$(".selector").validate({
onclick:false
})
|
focusInvalid Boolean 默認(rèn):true
提交表單后,未通過驗(yàn)證的表單(第一個(gè)或提交之前獲得焦點(diǎn)的未通過驗(yàn)證的表單)會獲得焦點(diǎn)
|
$(".selector").validate({
focusInvalid:false
})
|
focusCleanup Boolean 默認(rèn):false
當(dāng)未通過驗(yàn)證的元素獲得焦點(diǎn)時(shí),并移除錯(cuò)誤提示(避免和 focusInvalid.一起使用)
|
$(".selector").validate({
focusCleanup:true
})
|
errorClass String 默認(rèn):"error"
指定錯(cuò)誤提示的css類名,可以自定義錯(cuò)誤提示的樣式
|
$(".selector").validate({
errorClass:"invalid"
})
|
errorElement String 默認(rèn):"label"
使用什么標(biāo)簽標(biāo)記錯(cuò)誤
|
$(".selector").validate
errorElement:"em"
})
|
wrapper String
使用什么標(biāo)簽再把上邊的errorELement包起來
|
$(".selector").validate({
wrapper:"li"
})
|
errorLabelContainer Selector
把錯(cuò)誤信息統(tǒng)一放在一個(gè)容器里面
|
$("#myform").validate({
errorLabelContainer:"#messageBox",
wrapper:"li",
submitHandler:function() { alert("Submitted!") }
})
|
showErrors:
跟一個(gè)函數(shù),可以顯示總共有多少個(gè)未通過驗(yàn)證的元素
|
$(".selector").validate({
showErrors:function(errorMap,errorList) {
$("#summary").html("Your form contains " + this.numberOfInvalids() + " errors,see details below.");
this.defaultShowErrors();
}
})
|
errorPlacement:
跟一個(gè)函數(shù),可以自定義錯(cuò)誤放到哪里
|
$("#myform").validate({
rrorPlacement:function(error,element) { error.appendTo(element.parent("td").next("td"));
},
debug:true
})
|
success:
要驗(yàn)證的元素通過驗(yàn)證后的動(dòng)作,如果跟一個(gè)字符串,會當(dāng)做一個(gè)css類,也可跟一個(gè)函數(shù)
|
$("#myform").validate({
success:"valid",
submitHandler:function() { alert("Submitted!") }
})
|
highlight:
可以給未通過驗(yàn)證的元素加效果,閃爍等
|
|
addMethod(name,method,message)方法:
|
參數(shù)name是添加的方法的名字
|
參數(shù)method是一個(gè)函數(shù),接收三個(gè)參數(shù)(value,element,param) value是元素的值,element是元素本身 param是參數(shù),我們可以用addMethod來添加除built-in Validation methods之外的驗(yàn)證方法 比如有一個(gè)字段,只能輸一個(gè)字母,范圍是a-f,寫法如下:
$.validator.addMethod("af",function(value,element,params){
if(value.length>1){
return false;
}
if(value>=params[0] && value<=params[1]){
return true;
}else{
return false;
}
},"必須是一個(gè)字母,且a-f");
用的時(shí)候,比如有個(gè)表單字段的id="username",則在rules中寫
username:{
af:["a","f"]
}
addMethod的第一個(gè)參數(shù),就是添加的驗(yàn)證方法的名子,這時(shí)是af
addMethod的第三個(gè)參數(shù),就是自定義的錯(cuò)誤提示,這里的提示為:"必須是一個(gè)字母,且a-f"
addMethod的第二個(gè)參數(shù),是一個(gè)函數(shù),這個(gè)比較重要,決定了用這個(gè)驗(yàn)證方法時(shí)的寫法
如果只有一個(gè)參數(shù),直接寫,如果af:"a",那么a就是這個(gè)唯一的參數(shù),如果多個(gè)參數(shù),用在[]里,用逗號分開
|
meta String方式:
|
$("#myform").validate({
meta:"validate",
submitHandler:function() { alert("Submitted!") }
})
|
<script type="text/javascript" src="js/jquery.metadata.js"></script>
<script type="text/javascript" src="js/jquery.validate.js"></script>
<form id="myform">
<input type="text" name="email" class="{validate:{ required:true,email:true }}" />
<input type="submit" value="Submit" />
</form>
|
|