亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 語言 > JavaScript > 正文

jQuery Validate初步體驗(二)

2024-05-06 16:26:09
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了jQuery Validate初步體驗(二) 的相關資料,需要的朋友可以參考下
 

在上篇文章給大家介紹了jQuery Validate初步體驗(一) ,本文繼續給大家分享jquery validate相關知識,對本文感興趣的朋友快來學習吧。

剛剛試了所謂的新版的用法。千萬別問我是多新,因為我也不知道。。。

<!DOCTYPE html><html><head><script src="js/jquery.js"></script><script src="js/jquery.validate.js"></script><script> $().ready(function() {  $("#registerForm").validate(); });</script></head><body> <form id="registerForm" method="get" action="">  <fieldset>   <p>    <label for="cusername">用戶名</label>     <input id="cusername" name="username" type="text" data-rule-required="true" data-rule-rangelength="[2,10]" data-msg-required="用戶名不能為空" data-msg-rangelength="用戶名長度必須是{0}到{1}個字符">   </p>   <p>    <label for="cpassword">密碼</label>     <input id="cpassword" name="password" type="password" data-rule-required="true" data-rule-minlength="6" data-msg-required="密碼不能為空" data-msg-minlength="密碼必須不少于{0}位">   </p>   <p>    <label for="cconfirmpassword">確認密碼</label>     <input id="cconfirmpassword" name="confirmpassword" type="password" data-rule-required="true" data-rule-equalTo="#cpassword" data-msg-required="請再次輸入密碼" data-msg-equalTo="兩次輸入的密碼不一致">   </p>   <p>    <label for="cemail">郵箱</label>     <input id="cemail" name="email" data-rule-required="true" data-rule-email="true" data-msg-required="郵箱不能為空" data-msg-email="郵箱的格式不正確"/>   </p>   <p>    <input type="submit" value="提交">   </p>  </fieldset> </form></body></html> 

 個人感覺這種用法比通過javascript自定義驗證規則,要方便和簡單多了。昨天在剛開始自定義的時候,總是無法正確的提示,當時完全不知道為什么。直到檢查了多遍才發現,原來是因為我的rules里的鍵值對之間漏了一個逗號。所以,如果默認的校驗規則已經滿足你的驗證需求,而你只是想改變一下提示語。那我個人建議你用這種新版的用法,當然也可以用 系列(一) 里的方法

二。具體看情況自己選擇。

還有我上面的提示都是默認的黑色,身為提示,那樣也太沒存在感了。

為了增加存在感,你只需要在<head></head>之間插入下面的代碼就可以了。

<style> #registerForm label.error{  margin-left: 10px;  color:red; }</style> 

請注意上面的#號后面跟著是表單的ID,你需要改成你自己相應的表單ID。我昨天嘗試的時候,找到的資料里寫的是#frm。當時我還以為#frm又是我沒接觸過的新用法呢,我還一直疑惑,為什么我的提示不顯示成紅色?;A差哎。。。

如果默認的驗證規則已經不能滿足你的需求,那么接下來,你就得自定義驗證規則了。

比如,這里有一個需求,要你檢查用戶輸入的郵編是否合法,這時你就得自定義驗證規則了,使用的方法是jQuery.validator.addMethod()。

<!DOCTYPE html><html><head><script src="js/jquery.js"></script><script src="js/jquery.validate.js"></script><script> $().ready(function() {  jQuery.validator.addMethod("isZipCode", function(value, element) {   var tel = /^[0-9]{6}$/;   return this.optional(element) || (tel.test(value));  }, "請正確填寫您的郵政編碼");  $("#registerForm").validate({   rules : {    zipCode : {     required : true,//對于required的提示語句沒有進行任何的處理,他會使用默認的英文的提示。     isZipCode : true//isZipCode為自定義的驗證規則    }   },   messages : {//當你不寫提示語句,他會使用上面方法返回的提示。    zipCode : {     isZipCode : '請輸入正確的郵編'    }   }  }); });</script><style>#registerForm label.error { margin-left: 10px; color: red;}</style></head><body> <form id="registerForm" method="get" action="">  <fieldset>   <p>    <label for="czipCode">中國郵編</label>     <input id="czipCode" name="zipCode" />   </p>   <p>    <input type="submit" value="提交">   </p>  </fieldset> </form></body></html> 

當然,你也可以把這個驗證規則提取出來存到一個JS文件里,然后在要用的地方引入JS文件。

jQuery.validator.addMethod("isZipCode", function(value, element) { var tel = /^[0-9]{6}$/; return this.optional(element) || (tel.test(value));}, "請正確填寫您的郵政編碼"); <!DOCTYPE html><html><head><script src="js/jquery.js"></script><script src="js/jquery.validate.js"></script><script src="js/validate.expand.js"></script><script> $().ready(function() {  $("#registerForm").validate({   rules : {    zipCode : {     required : true,//對于required的提示語句沒有進行任何的處理,他會使用默認的英文的提示。     isZipCode : true//isZipCode為自定義的驗證規則    }   },   messages : {//當你不寫提示語句,他會使用方法返回的提示。    zipCode : {     isZipCode : '請輸入正確的郵編'    }   }  }); });</script><style>#registerForm label.error { margin-left: 10px; color: red;}</style></head><body> <form id="registerForm" method="get" action="">  <fieldset>   <p>    <label for="czipCode">中國郵編</label>     <input id="czipCode" name="zipCode" />   </p>   <p>    <input type="submit" value="提交">   </p>  </fieldset> </form></body></html> 

 接下來,就要好好說說jQuery.validator.addMethod() 這個方法,這個方法一共有三個參數。

第一個參數 :“isZipCode” 是定義方法名,必須保證方法名唯一。

第二個參數:是一個回調(callback)函數。

  這個回調函數有三個參數:

    第一個:value ,是當前被驗證的元素的值。

    第二個:element,是當前被驗證的元素。

    第三個:param,是傳入的參數,例如: minlength : 6  里的參數為6;  rangelength:[2,10]  里的參數為2和10。當你沒有傳入參數,這個可以省略不寫。

    在這個回調函數里有一個this.optional(element)函數要特別注意。當表單的輸入值為空時,即element的值為空,this.optional(element)的返回值為true,類似于判空操作,也就是說該表單輸入項不是必填項,當不填時通過了驗證。如果element的值不為空,this.optional(element)的返回值就是false,這時就要根據  ||  后面的驗證來判斷最終的返回為true 或false。所以當某個輸入項不是必填項但如果填寫了又需要按照一定的規則來驗證的時候,一定要記得帶上this.optional(element)。

第三個參數:驗證的提示信息。

  這個參數可以直接是一句提示信息,例如,"這是必填字段";也可以通過創建函數jQuery.validator.format(value)來顯示,例如,$.validator.format("請輸入長度在 {0} 到 {1} 之間的字符串"),其中 {0} {1} 代表該方法的參數,也就是回調(callback)函數里的第三個參數param。

官網提供的additional-methods.js里包含一些常用的驗證方式,比如lettersonly,ziprange,nowhitespace等,但我粗略的看了一下,發現大部分只是僅供參考,實用性不強,不能直接使用。

我整理了幾個網上找到的驗證規則,當然也僅供參考。驗證規則的核心就是正則表達式,這個得學。

// 郵政編碼驗證 jQuery.validator.addMethod("isZipCode", function(value, element) {var tel = /^[0-9]{6}$/;return this.optional(element) || (tel.test(value));}, "請正確填寫您的郵政編碼");// 手機號碼驗證 jQuery.validator.addMethod("mobile", function(value, element) { var length = value.length;var mobile = /^(13[0-9]|14[0-9]|15[0-9]|18[0-9])/d{8}$/;return this.optional(element) || (length == 11 && mobile.test(value)); }, "手機號碼格式錯誤"); // QQ號碼驗證 jQuery.validator.addMethod("qq", function(value, element) { var tel = /^[1-9]/d{4,10}$/; return this.optional(element) || (tel.test(value)); }, "qq號碼格式錯誤"); // IP地址驗證 jQuery.validator.addMethod("ip", function(value, element) { var ip = /^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)/.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/; return this.optional(element) || (ip.test(value) && (RegExp.$1 < 256 && RegExp.$2 < 256 && RegExp.$3 < 256 && RegExp.$4 < 256)); }, "Ip地址格式錯誤"); // 字母和數字的驗證 jQuery.validator.addMethod("chrnum", function(value, element) { var chrnum = /^([a-zA-Z0-9]+)$/; return this.optional(element) || (chrnum.test(value)); }, "只能輸入數字和字母(字符A-Z, a-z, 0-9)"); // 中文的驗證 jQuery.validator.addMethod("chinese", function(value, element) { var chinese = /^[/u4e00-/u9fa5]+$/; return this.optional(element) || (chinese.test(value)); }, "只能輸入中文"); 

如果有什么地方寫錯了或者寫的不夠好,希望大大們能提出來。還有,歡迎留言評論,一起學習。



注:相關教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩av在线天堂网| 欧美乱大交xxxxx| xvideos亚洲人网站| 色伦专区97中文字幕| 欧美日韩在线视频一区| 在线成人激情视频| 亚洲欧美国产制服动漫| 亚洲va欧美va国产综合剧情| 国产精品扒开腿做爽爽爽的视频| 国产精品视频公开费视频| 精品国产一区二区三区久久狼黑人| 91av视频在线播放| 中文字幕一区日韩电影| 黑人巨大精品欧美一区二区免费| 国产精品久久视频| 成人h猎奇视频网站| 国模gogo一区二区大胆私拍| 国产精品99久久久久久久久久久久| 欧美精品精品精品精品免费| 国产成人av网址| 日韩高清电影好看的电视剧电影| 亚洲日韩欧美视频| 亚洲第一男人天堂| 国产成人精品免费久久久久| 日韩在线一区二区三区免费视频| 国精产品一区一区三区有限在线| 久久精品福利视频| 国产v综合v亚洲欧美久久| 欧美肥臀大乳一区二区免费视频| 欧美有码在线观看| 日本亚洲欧美三级| 亚洲国产高清高潮精品美女| 欧美激情国产精品| 欧美高清视频一区二区| 久久久噜久噜久久综合| 亚洲一区久久久| 亚洲欧洲日产国产网站| 精品国产乱码久久久久久虫虫漫画| 亚洲视频在线观看免费| 8x海外华人永久免费日韩内陆视频| 亚洲系列中文字幕| 热门国产精品亚洲第一区在线| 亚洲v日韩v综合v精品v| 91精品国产高清久久久久久久久| 精品五月天久久| 亚洲欧美一区二区三区在线| 超碰日本道色综合久久综合| 亚洲free性xxxx护士hd| 精品女同一区二区三区在线播放| 亚洲人成电影网站| 91精品国产乱码久久久久久蜜臀| 97激碰免费视频| 欧美国产欧美亚洲国产日韩mv天天看完整| 国产精品亚洲激情| 中文字幕精品久久久久| 97视频人免费观看| 国产伦精品一区二区三区精品视频| 欧美视频精品一区| 国产91|九色| 91麻豆桃色免费看| 欧美在线亚洲一区| 亚洲а∨天堂久久精品喷水| 亚洲xxxx3d| 中文字幕在线看视频国产欧美| 亚洲日本中文字幕免费在线不卡| 色综合久久久888| 91在线中文字幕| 国产精品高潮粉嫩av| 亚洲自拍偷拍色图| 亚洲人在线观看| 欧美亚洲视频一区二区| 97在线观看视频| 91亚洲国产精品| 国产成人综合一区二区三区| 日本道色综合久久影院| 国产热re99久久6国产精品| 日本国产精品视频| 亚洲一区二区黄| 成人亚洲欧美一区二区三区| 成人免费看吃奶视频网站| 美女久久久久久久| 最近中文字幕mv在线一区二区三区四区| 欧美国产日本高清在线| 国产精品自拍视频| 欧美国产精品日韩| 97精品久久久| 日韩小视频网址| 欧洲精品毛片网站| 久久久久久久久久久国产| 国产一区二区三区中文| 久久精品久久精品亚洲人| 久久久久久成人| 日韩激情片免费| 日韩免费观看在线观看| 欧美激情视频在线| 亚洲国产欧美一区二区三区久久| 国产欧美一区二区白浆黑人| 欧美男插女视频| 亚洲天堂av图片| 亚洲18私人小影院| 国产欧美一区二区白浆黑人| 欧美日本啪啪无遮挡网站| 亚洲乱码国产乱码精品精| 日韩av在线网| 色综合久久中文字幕综合网小说| 欧美午夜精品在线| 日韩中文字幕不卡视频| 一区二区三区国产视频| 色先锋资源久久综合5566| 欧美一区二区三区图| 色综合色综合网色综合| 2021久久精品国产99国产精品| 欧美极品在线播放| 国产91在线播放九色快色| 久久久国产精品免费| 一本一本久久a久久精品牛牛影视| 91精品国产高清| 狠狠色狠色综合曰曰| 欧美性猛交xxxx富婆弯腰| 久久久中精品2020中文| 欧美老女人性视频| 日韩最新av在线| 欧美性感美女h网站在线观看免费| 最新国产精品拍自在线播放| 在线精品播放av| 日韩女优在线播放| 国产精品国内视频| 成人午夜黄色影院| 欧美精品久久久久久久久| 欧美色另类天堂2015| 国产精品久久久久久久久影视| 久久视频在线看| 亚洲视频精品在线| 日韩av中文字幕在线免费观看| 国产一区二区三区中文| 日韩av在线直播| 国产国产精品人在线视| 91精品成人久久| 国产精品人人做人人爽| 亚洲free性xxxx护士白浆| 久久久久亚洲精品国产| 久久久久国产精品免费网站| 日韩影视在线观看| 亚洲黄色成人网| 国产精品一久久香蕉国产线看观看| 欧美丰满少妇xxxxx做受| 欧美午夜精品在线| 日韩经典第一页| 亚洲天堂一区二区三区| 在线观看国产精品日韩av| 青草成人免费视频| 2019亚洲日韩新视频| 亚洲天堂视频在线观看| 中文字幕亚洲天堂| 久久综合国产精品台湾中文娱乐网| 国产美女精品视频免费观看| 亚洲精品电影网| 奇米4444一区二区三区| 日韩欧美国产激情| 韩国国内大量揄拍精品视频| 日韩av在线播放资源| 色yeye香蕉凹凸一区二区av| 国产精品欧美日韩久久| 欧美大荫蒂xxx|