jQuery插件formValidator自定義函數(shù)擴展功能實例詳解
本文實例講述了jQuery插件formValidator自定義函數(shù)擴展功能的方法。分享給大家供大家參考,具體如下:
jQuery formValidator表單驗證插件是什么?感興趣的讀者可參考《jQuery formValidator表單驗證插件》以及本站其他相關文檔
此處省略若干文字。
實際項目中的表單應用是多種多樣的,隨之而來的驗證也是多變的,但Jquery formValidator為我們提供了自定義函數(shù)接口,個人認為是其最主要的強大之處。廢話不多說,直接實例。
例一:座機和手機,至少選其一,可以不選。
分析:這屬于組合驗證,需要根據(jù)用戶選擇框體的不同進行不同的驗證條件。
知識點:Jquery formvalidator提供了自定義函數(shù)接口為functionValidator({ fun: funname });
座機手機
$("#txtMobileTel,#txtContactTel").formValidator({ tipid: "txtMobileTelTip", onshow: "請?zhí)顚懭我环N聯(lián)系號碼", onfocus: "請輸入移動電話或座機電話", oncorrect: "輸入正確!" }).functionValidator({ fun: allEmpty });
function allEmpty(val, elem) {
if ($("#txtMobileTel").val() == "" && $("#txtContactTel").val() == "") {
return '請輸入移動電話或座機電話';
}
else {
if ($("#txtMobileTel").val() != "" && $("#txtContactTel").val() != "") {
if (($("#txtMobileTel").val()).search(/^(((13[0-9]{1})|(15[0-9]{1}))+\d{8})$/) != -1) {
if (($("#txtContactTel").val()).search(/^(([0\+]\d{2,3}-)?(0\d{2,3})-)?(\d{7,8})(-(\d{3,}))?$/) != -1) { return true } else {
return "座機電話格式錯誤";
}
} else {
return "移動電話格式錯誤";
}
} else {
if ($("#txtMobileTel").val() != "") {
if (($("#txtMobileTel").val()).search(/^(((13[0-9]{1})|(15[0-9]{1}))+\d{8})$/) != -1) { return true } else {
return "移動電話格式錯誤";
}
}
if ($("#txtContactTel").val() != "") {
if (($("#txtContactTel").val()).search(/^(([0\+]\d{2,3}-)?(0\d{2,3})-)?(\d{7,8})(-(\d{3,}))?$/) != -1) { return true } else {
return "座機電話格式錯誤";
}
}
}
};
例二:地區(qū)級聯(lián)下拉,當不存在二級地區(qū)的下拉解除校驗。
省市地區(qū)級聯(lián)
$("#ddlOne").formValidator({ onshow: "請選擇省市", onfocus: "省市必須選擇", oncorrect: "輸入正確" }).inputValidator({ min: 1, onerror: "請選擇有效的地區(qū)" }).functionValidator({ fun: city });
$("#ddlTwo").formValidator({ onshow: "請選擇城市", onfocus: "城市必須選擇", oncorrect: "輸入正確" }).inputValidator({ min: 1, onerror: "請選擇有效的地區(qū)" });
function city(val, elem) {
var a = "";
$.getJSON("../Customer/Area.ashx?parentid=" + $("#ddlOne option:selected").val(), null, function(json) {
if (json[0].areacode == "0") {
$("#ddlTwo").attr("disabled", true).unFormValidator(true); //解除校驗
}
else {
$("#ddlTwo").attr("disabled", false).unFormValidator(false); //恢復校驗
}
});
}
常用驗證:
整數(shù):
正整數(shù):
$("#zzs").formValidator({onshow:"請輸入正整數(shù)",oncorrect:"謝謝你的合作,你的正整數(shù)正確"}).regexValidator({regexp:"intege1",datatype:"enum",onerror:"正整數(shù)格式不正確"});
負整數(shù):
$("#fzs").formValidator({onshow:"請輸入負整數(shù)",oncorrect:"謝謝你的合作,你的負整數(shù)正確"}).regexValidator({regexp:"intege2",datatype:"enum",onerror:"負整數(shù)格式不正確"});
正數(shù):
$("#zs1").formValidator({onshow:"請輸入正數(shù)",oncorrect:"謝謝你的合作,你的正數(shù)正確"}).regexValidator({regexp:"num1",datatype:"enum",onerror:"正數(shù)格式不正確"});
數(shù)字:
$("#sz").formValidator({onshow:"請輸入數(shù)字",oncorrect:"謝謝你的合作,你的數(shù)字正確"}).regexValidator({regexp:"num",datatype:"enum",onerror:"數(shù)字格式不正確"});
負數(shù):
$("#fs").formValidator({onshow:"請輸入負數(shù)",oncorrect:"謝謝你的合作,你的負數(shù)正確"}).regexValidator({regexp:"num2",datatype:"enum",onerror:"負數(shù)格式不正確"});
浮點數(shù):
$("#zfds").formValidator({onshow:"請輸入正浮點數(shù)",oncorrect:"謝謝你的合作,你的正浮點數(shù)正確"}).regexValidator({regexp:"decmal1",datatype:"enum",onerror:"正浮點數(shù)格式不正確"});
$("#ffds").formValidator({onshow:"請輸入負浮點數(shù)",oncorrect:"謝謝你的合作,你的負浮點數(shù)正確"}).regexValidator({regexp:"decmal2",datatype:"enum",onerror:"負浮點數(shù)格式不正確"});
$("#fffds").formValidator({onshow:"請輸入非負浮點數(shù)",oncorrect:"謝謝你的合作,你的非負浮點數(shù)正確"}).regexValidator({regexp:"decmal4",datatype:"enum",onerror:"非負浮點數(shù)格式不正確"});
$("#fzfds").formValidator({onshow:"請輸入非正浮點數(shù)",oncorrect:"謝謝你的合作,你的非正浮點數(shù)正確"}).regexValidator({regexp:"decmal5",datatype:"enum",onerror:"非正浮點數(shù)格式不正確"});
手機:
$("#sj").formValidator({onshow:"請輸入你的手機號碼",onfocus:"必須是13或15打頭哦",oncorrect:"謝謝你的合作,你的手機號碼正確"}).regexValidator({regexp:"mobile",datatype:"enum",onerror:"手機號碼格式不正確"});
座機:
$("#dh").formValidator({onshow:"請輸入國內電話",onfocus:"例如:0577-88888888或省略區(qū)號88888888",oncorrect:"謝謝你的合作,你的國內電話正確"}).regexValidator({regexp:"tel",datatype:"enum",onerror:"國內電話格式不正確"});
郵箱:
$("#email").formValidator({onshow:"請輸入你的email",onfocus:"請注意你輸入的email格式,例如:wzmaodong@126.com",oncorrect:"謝謝你的合作,你的email正確"}).regexValidator({regexp:"email",datatype:"enum",onerror:"email格式不正確"});
郵編:
$("#yb").formValidator({onshow:"請輸入郵編",onfocus:"6位數(shù)字組成的哦",oncorrect:"謝謝你的合作,你的郵編正確"}).regexValidator({regexp:"zipcode",datatype:"enum",onerror:"郵編格式不正確"});
QQ:
$("#qq").formValidator({onshow:"請輸入QQ號碼",oncorrect:"謝謝你的合作,你的QQ號碼正確"}).regexValidator({regexp:"qq",datatype:"enum",onerror:"QQ號碼格式不正確"});
身份證:
$("#sfz").formValidator({onshow:"請輸入身份證",oncorrect:"謝謝你的合作,你的身份證正確"}).regexValidator({regexp:"idcard",datatype:"enum",onerror:"身份證格式不正確"});
字母:
$("#zm").formValidator({onshow:"請輸入字母",oncorrect:"謝謝你的合作,你的字母正確"}).regexValidator({regexp:"letter",datatype:"enum",onerror:"字母格式不正確"});
大寫字母:
$("#dxzm").formValidator({onshow:"請輸入大寫字母",oncorrect:"謝謝你的合作,你的大寫字母正確"}).regexValidator({regexp:"letter_u",datatype:"enum",onerror:"大寫字母格式不正確"});
小寫字母:
$("#xxzm").formValidator({onshow:"請輸入小寫字母",oncorrect:"謝謝你的合作,你的小寫字母正確"}).regexValidator({regexp:"letter_l",datatype:"enum",onerror:"小寫字母格式不正確"});
希望本文所述對大家jQuery程序設計有所幫助。
- jQuery插件擴展實例【添加回調函數(shù)】
- jQuery插件擴展extend的簡單實現(xiàn)原理
- jQuery插件擴展測試實例
- jQuery插件kinMaxShow擴展效果用法實例
- jquery事件機制擴展插件 jquery鼠標右鍵事件
- JQuery模板插件 jquery.tmpl 動態(tài)ajax擴展
- boxy基于jquery的彈出層對話框插件擴展應用 彈出層選擇器
- jQuery下擴展插件和拓展函數(shù)的寫法(匿名函數(shù)使用的典型例子)
- jquery.boxy插件的iframe擴展代碼
- jQuery autocomplate 自擴展插件、自動完成示例代碼
- 利用jQuery插件擴展識別瀏覽器內核與外殼的類型和版本的實現(xiàn)代碼
- jQuery插件擴展操作入門示例
相關文章
使用Jquery搭建最佳用戶體驗的登錄頁面之記住密碼自動登錄功能(含后臺代碼)
今天將登錄功能徹底完成,加入記住密碼自動登錄功能,密碼在客戶端進行第一次加密存儲。并修改了一些bug,優(yōu)化js代碼,上一版本太亂了。2011-07-07
Ajax異步獲取html數(shù)據(jù)中包含js方法無效的解決方法
本文主要介紹了Ajax異步獲取html數(shù)據(jù)中包含js方法無效的解決方法,具有很好的參考價值,下面跟著小編一起來看下吧2017-02-02
最佳6款用于移動網站開發(fā)的jQuery 圖片滑塊插件小結
隨著智能手機的普及,越來越多的用戶喜歡通過手機中瀏覽網頁。今天這篇文章為大家推薦最佳6款用于移動應用的 jQuery 圖片滑塊插件,這些插件很好的處理了觸屏事件,效果平滑,幫助你構建用戶體驗良好的移動網站2012-07-07
jquery如何把參數(shù)列嚴格轉換成數(shù)組實現(xiàn)思路
某參數(shù)的列只有一個參數(shù),那么each是失敗,如何保證pp嚴格是數(shù)組呢,很簡單var a=[pp];這一句就行了,感興趣的朋友可以參考下哈,希望可以幫助到你2013-04-04

