摘要:使用下載后包中的或者就是簡體中文的消息語言包引入和開始使用默認(rèn)校驗(yàn)規(guī)則必須輸入的字段。使用方法調(diào)用驗(yàn)證輸入值。日期校驗(yàn)出錯(cuò),慎用。必須輸入合法的信用卡號。輸入擁有合法后綴名的字符串上傳文件的后綴。
業(yè)務(wù)上需要進(jìn)行驗(yàn)證判斷,感覺一個(gè)一個(gè)寫太麻煩,于是乎在網(wǎng)上搜索到j(luò)Query-Validate這個(gè)表單插件
首先需要引入jquery包
在https://jqueryvalidation.org/官網(wǎng)下載好插件后引入使用。
使用下載后包中的 messages_zh.js或者messages_zh.min.js 就是簡體中文的消息語言包
引入jquery.validate.min.js和messages_zh.min.js 開始使用
默認(rèn)校驗(yàn)規(guī)則
1 required:true 必須輸入的字段。
2 remote:"check.php" 使用 ajax 方法調(diào)用 check.php 驗(yàn)證輸入值。
3 email:true 必須輸入正確格式的電子郵件。
4 url:true 必須輸入正確格式的網(wǎng)址。
5 date:true 必須輸入正確格式的日期。日期校驗(yàn) ie6 出錯(cuò),慎用。
6 dateISO:true 必須輸入正確格式的日期(ISO),例如:2009-06-23,1998/01/22。只驗(yàn)證格式,不驗(yàn)證有效性。
7 number:true 必須輸入合法的數(shù)字(負(fù)數(shù),小數(shù))。
8 digits:true 必須輸入整數(shù)。
9 creditcard: 必須輸入合法的信用卡號。
10 equalTo:"#field" 輸入值必須和 #field 相同。
11 accept: 輸入擁有合法后綴名的字符串(上傳文件的后綴)。
12 maxlength:5 輸入長度最多是 5 的字符串(漢字算一個(gè)字符)。
13 minlength:10 輸入長度最小是 10 的字符串(漢字算一個(gè)字符)。
14 rangelength:[5,10] 輸入長度必須介于 5 和 10 之間的字符串(漢字算一個(gè)字符)。
15 range:[5,10] 輸入值必須介于 5 和 10 之間。
16 max:5 輸入值不能大于 5。
17 min:10 輸入值不能小于 10。
demo:
$("#add-admin-form").validate({ rules:{ role: "required", userName:{ required: true, maxlength: 20 }, realName:{ required: true, maxlength: 20 } }, messages:{ role: "請選擇您的角色", userName:{ required: "請輸入用戶名", maxlength: "用戶名過長" }, realName:{ required: "請輸入用戶名", maxlength: "真是姓名過長" } } })
rlues代表驗(yàn)證規(guī)則;
messages:標(biāo)驗(yàn)證錯(cuò)誤后顯示的文字
其中role、realName等字段都是表單中input的name值
用以下方法使用自定義驗(yàn)證,這里的自定義驗(yàn)證有點(diǎn)不太一樣,需要先新增自定義方法 然后進(jìn)行form表單驗(yàn)證的時(shí)候進(jìn)行試用
jQuery.validator.addMethod("isPhone", function (value, element) { return /^0?(13[0-9]|15[012356789]|17[0135678]|18[0-9]|14[57])[0-9]{8}$/.test(value); }, "請正確填寫您的手機(jī)號碼");
通過以上方法進(jìn)行驗(yàn)證可以實(shí)現(xiàn)自定義;
分類使用,有時(shí)候我們需要進(jìn)行多個(gè)input 或者select的聯(lián)合驗(yàn)證 這時(shí)候就可以使用groups
$("#add-admin-form").validate({ groups: { username: "province city district" //username定義的組名,province city district 是元素name }, rules: { role: "required", userName: { required: true, maxlength: 20 }, realName: { required: true, maxlength: 20 }, phone: { isPhone: true }, gender: { isGender: true, }, province: { isPlace: true }, city: { isPlace: true }, district: { isPlace: true }, school: "required" }, messages: { role: "請選擇您的角色", userName: { required: "請輸入用戶名", maxlength: "用戶名過長" }, realName: { required: "請輸入用戶名", maxlength: "真是姓名過長" }, phone: "請輸入正確的手機(jī)號", gender: { isGender: "請選擇您的性別" }, province: "請選擇您的所在地", city: "請選擇您的所在地", district: "請選擇您的所在地", school: "請選擇您的學(xué)校" }, errorPlacement: function (error, element) { //錯(cuò)誤提示在什么地方 if (element.attr("name") == "province" || element.attr("name") == "city" || element.attr("name") == "district") { error.insertAfter("#district"); //如果是fname和lname呢,就#lastname后面 } else { error.insertAfter(element); } }, })
其中g(shù)roups和errorPlacement是必不可少的,前者進(jìn)行關(guān)于元素的分組處理,后者進(jìn)行處理操作后error的位置問題
用空格隔開后分別定義多個(gè)元素
在rules中也要定義它自己的規(guī)則 同樣可使用required或者自定義判斷都可以
同樣消息也是用同樣的方法
errorPlacement書體不過if else 進(jìn)行分類處理 定位error的表示位置
radiobox和checkbox效果好像沒出來 我使用自定義函數(shù)實(shí)現(xiàn)的 以后琢磨琢磨
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/85012.html
摘要:號稱不用寫一行代碼就能驗(yàn)證表單。動(dòng)態(tài)表單驗(yàn)證現(xiàn)在更聰明,它會(huì)自動(dòng)檢測您的表單的修改并相應(yīng)地調(diào)整其驗(yàn)證。簡單地添加,刪除或編輯字段,將會(huì)自動(dòng)驗(yàn)證。還有好多手機(jī)號碼格式有誤請?zhí)顚懯謾C(jī)號驗(yàn)證表單注意是我自定義的驗(yàn)證規(guī)則,添加到里面的 基本對比 名稱 gitbub地址 stars 文檔地址 jquery-validation 這里 7859(截止7/21) 這里 Parsley....
摘要:簡介前端發(fā)展迅速,開發(fā)者富有的創(chuàng)造力不斷的給前端生態(tài)注入新生命,各種庫框架工程化構(gòu)建工具層出不窮,眼花繚亂,不盲目追求前沿技術(shù),學(xué)習(xí)框架和庫在滿足自己開發(fā)需求的基礎(chǔ)上,然后最好可以對源碼進(jìn)行調(diào)研,了解和深入實(shí)現(xiàn)原理,從中可以獲得更多的收獲隨 showImg(https://segmentfault.com/img/remote/1460000016784101?w=936&h=397)...
摘要:轉(zhuǎn)載來源包管理器管理著庫,并提供讀取和打包它們的工具。能構(gòu)建更好應(yīng)用的客戶端包管理器。一個(gè)整合和的最佳思想,使開發(fā)者能快速方便地組織和編寫前端代碼的下一代包管理器。很棒的組件集合。隱秘地使用和用戶數(shù)據(jù)。 轉(zhuǎn)載來源:https://github.com/jobbole/aw... 包管理器管理著 javascript 庫,并提供讀取和打包它們的工具。?npm – npm 是 javasc...
閱讀 1057·2021-11-15 18:11
閱讀 3177·2021-09-22 15:33
閱讀 3473·2021-09-01 11:42
閱讀 2671·2021-08-24 10:03
閱讀 3632·2021-07-29 13:50
閱讀 2939·2019-08-30 14:08
閱讀 1286·2019-08-28 17:56
閱讀 2268·2019-08-26 13:57