jQuery formvalidator插件 API幫助文檔

jQuery formvalidator插件 API幫助文檔

目前支持4種大的校驗方式,分別是:InputValidator(針對input、textarea、select控件)、CompareValidator、AjaxValidator、RegexValidator、FunctionValidator
每種格式支持的控件類型如下:

input textarea select
校驗方式 text radio checkbox file password textarea select-one
InputValidator
CompareValidator      
AjaxValidator    
RegexValidator      
FunctionValidator
如果你用了不支持的校驗功能,插件將忽略這個校驗功能。

插件目前提示錯誤,有兩種模式:showword和showalert,即文字提示和窗口提示,下面的5大驗證方式,針對showalert這種方式不是都必須的,有些配置是沒有作用的
下面分別羅列全局初始化和5種校驗方式公開的屬性
formValidator: 用來做初始化的類型,必須先執行
屬性 屬性名稱 默認值 showword showalert 詳細解釋
validatorGroup 校驗組 "1" 一個頁面的控件可以分成多個組,分開校驗
empty 是否可以爲空 false  
automodify 輸入錯誤離開焦點的時候,自動修復錯誤 false 先給出提示然後,自動修復,目前只支持text、file、textarea三種類型
onempty 空時候的提示 "輸入內容爲空"   可以爲空,爲空時候的提示
onshow 顯示時候的提示 "請輸入內容"    
onfocus 獲得焦點的提示 "請輸入內容"    
oncorrect 輸入正確後的提示 "輸入正確"   當你焦點離開控件的時候,如果輸入正確將出現該提示
onvalid 校驗通過後的回調函數 null 參數1:對象本身 參數2:值 校驗通過後,你還希望執行一些操作,你可以通過這個屬性來執行。
onfocusevent 獲得焦點後要追加的回調函數 null 參數1:對象本身
onblurevent 失去焦點後要追加的回調函數 null 參數1:對象本身
tipid 顯示錯誤的容器ID 表單ID+"Tip"    
defaultvalue 默認值 null 所有input和select表單。如果你不設置就保持原值,一旦設置就設爲默認值。
       
InputValidator  
屬性 屬性名稱 默認值 詳細解釋
type 比較類型 "size" (對select無效)"size":表示比較長度 "value":比較值。
min 最小長度/值 0 (對select無效)
max 最大長度/值 99999999999999 (對select無效)
onerror 發生錯誤的提示 "輸入錯誤"  
defaultvalue 默認值 null 能滿足預設默認值的需求
       
CompareValidator  
屬性 屬性名稱 默認值 詳細解釋
desID 要比較控件的ID "" 要跟源目標進行比較的目標ID
operateor 比較符號 "=" 一共有如下幾種類型:=、!=、>、>=、<、<=
datatype 數據類型 "string" 目前只支持2種:"string"、"number"
onerror 發生錯誤的提示 "輸入錯誤"  
       
RegexValidator:  
屬性 屬性名稱 默認值 詳細解釋
regexp 正則表達式 "" 採用的是顯式構造函數new RegExp("pattern"[,"flags"]); 由於Javascript 中'\' 被用作轉義字符,所以在使用顯示構造函數構造實例對象的時候,需要使用'\\' 代替'\'
param 附加參數 "i" g:代表可以進行全局匹配。
i:代表不區分大小寫匹配。
m:代表可以進行多行匹配。
可以任意組合,當然也可以不加參數
datatype 數據類型 "string" "string":自己寫的表達式,"enum":枚舉名。具體請見demo3.htm,你可以自己修改附加pageValidatorRegex.js裏的枚舉項目名和表達式。
onerror: 發生錯誤的提示 "輸入錯誤"  
       
AjaxValidator: 幾乎所有的屬性跟$.ajax()的屬性一樣,請參考$.ajax()函數的幫助
屬性 屬性名稱 默認值 詳細解釋
type 請求的類型 "GET" "POST" 或 "GET"
url 發送到的URL地址 ""  
datatype 返回的數據類型 "html" xml、html、script、json
data 數據 ""  
async 是否以異步的方式發送 true  
success 當請求成功時調用的函數 null  
processdata 自動處理返回的數據爲字符串 true 在默認的情況下,如果data選項傳進的數據是一個對象而不是字符串,將會自動地被處理和轉換成一個查詢字符串
complete 當請求完成時調用的函數 null  
beforesend 當請求前時調用的函數 null  
error 當請求失敗時調用的函數 "請求失敗" 你可以自己定義這個錯誤,在error裏自動打出
 
公共函數: 主要是設置全局參數和判斷是否通過校驗
函數名 函數說明
jQuery.
formValidator.
initConfig
參數:配置類型
屬性 默認值 說明
validatorGroup "1" 你要針對哪個組進行配置
alertMessage false 是否彈出窗口
onSuccess null 該組校驗通過後的回調函數,返回false,阻止表單的提交
submitOnce false 校驗通過後,是否灰掉所有的提交按鈕
onError null 該組校驗失敗後的回調函數
jQuery.
formValidator.
PageIsValid
一個參數: 不是配置類型
validatorGroup "1" 你要針對哪個組進行驗證
jQuery.
formValidator.
IsOneValid
一個參數: 當時設置驗證的表單元素ID。
返回是否校驗成功的信息。
jQuery.
formValidator.
SetFailState
function("tipid","顯示的信息")
在showword模式下,如果你的額外校驗沒有通過,你可以通過它來設置成失敗信息和狀態
jQuery.
formValidator.
GetLength
function("表單元素id")
判斷表單元素的選擇長度(個數)
checkbox或radiobutton表示選擇的個數。
select表示選擇的selectedIndex值。
其它的表示字符長度。
       
問答:      
1、如何實現一個控件,根據不同的情況,實現不同的控制?
你只需要在你的不同種情況下,重新設置你的【一行代碼】
 
2、一個頁面上我有幾個tab頁,如何實現每個Tab頁上的控件單獨校驗?
每個Tab頁上需要校驗的控件,你在寫【一行代碼】的時候,顯示的聲明組號
 
3、我採用的頁面上文字問題的方式,點提交的時候,有校驗未通過的,除了文字提示外,還可以再彈出窗口提示嗎?
這個問題很簡單,你只要設置改組的全局配置,
jQuery.formValidator.initConfig({onError:function(){alert("有部分校驗沒有通過,請看頁面具體提示");}})
 
4、所有校驗通過後,我還要再做別的判斷可以嗎?我自己的判斷沒有通過可以中斷提交嗎?

同樣很簡單,你頁只需設置該組的全局配置,
jQuery.formValidator.initConfig({onSuccess:function()
{
if(你的額外判斷失敗)
    return false;
else
    return true;
}})

 
5、我有一組的checkbox(radiobutton)如何設置校驗?
你只需在該組的第一個checkbox上設置校驗信息即可,具體請參考demo1裏的範例
如果你該組的第一個控件的ID ,你可以這麼寫:$("sex_1").InputValidator({...})
如果你只知道該組的name,你可以這麼寫:$("input:check[@name='sex']").slice(0,1).InputValidator({...})
 
6、我有2個表單元素,任意一個元素輸入東西就算驗證通過,如何寫代碼?比如要求輸入中文名字和英文名字任意一個即算校驗通過。
正在開發這個功能
 
7、一個表單元素校驗通過了,但是我想額外再進行其它的校驗,出錯要自定義錯誤,如何寫代碼?
$("#ewjy").formValidator({onshow:"無論你輸入什麼,都會提示你額外校驗出錯,錯誤信息自定義",onfocus:"至少輸入一個字符",oncorrect:"你怎麼可能輸入正確了,難道是bug?",onvalid:function(){$.formValidator.SetFailState("ewjyTip","額外校驗失敗");alert("額外校驗失敗");return false;}}).InputValidator({min:1,onerror:"這裏至少要一個字符,請確認"});
 
8、如何讓賦了初始值的表單元素默認校驗通過
$("#xueli").formValidator({onshow:"請選擇你的學歷",onfocus:"學歷必須選擇",oncorrect:"謝謝你的配合",defaultvalue:"b"}).InputValidator({onerror: "你是不是忘記選擇學歷了!"}).DefaultPassed();
免責聲明:

轉自http://www.cnblogs.com/wzmaodong/archive/2008/01/11/1034901.html

如有侵害您的權利,請與我聯繫,我會立刻刪除文章。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章