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

首頁 > 語言 > JavaScript > 正文

jQuery Validate初步體驗(一)

2024-05-06 16:26:10
字體:
來源:轉載
供稿:網友
jQuery 是一個快速、簡單的JavaScript library, 它簡化了HTML 文件的traversing,事件處理、動畫、Ajax 互動,從而方便了網頁制作的快速發展。 jQuery 是為改變你編寫JavaScript 的方式而設計的,本文給大家分享jquery validate初步體驗(一),感興趣的朋友一起學習吧
 

jQuery 是一個快速、簡單的JavaScript library, 它簡化了HTML 文件的traversing,事件處理、動畫、Ajax 互動,從而方便了網頁制作的快速發展。 jQuery 是為改變你編寫JavaScript 的方式而設計的。

jQuery Validate 插件為表單提供了強大的驗證功能,讓客戶端表單驗證變得更簡單。

但是在學習的過程中,我也遇到了疑惑,網上的很多例子貌似都是依賴jquery.metadata.js這個庫,然后在標簽里寫成class=”required remote” 這樣的形式,class本身是呈現樣式的,現在被附上各種校驗的規則,看上去有些亂。那如果不依賴jquery.metadata.js,又該怎么寫。

1、只引入jquery.js(具體版本自己選擇)和jquery.validate.js

<!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" required="true" rangelength="[2,10]">  </p>  <p>  <label for="cpassword">密碼</label>  <input id="cpassword" name="password" type="password" required="true" minlength="6">  </p>  <p>  <label for="cconfirmpassword">確認密碼</label>   <input id="cconfirmpassword" name="confirmpassword" type="password" required="true" equalTo="#cpassword">  </p>  <p>  <label for="cemail">郵箱</label>   <input id="cemail" name="email" required="true" email="true"> </input>  </p>  <p>  <input type="submit" value="提交">  </p> </fieldset> </form></body></html> 

事實證明,只引入上面的兩個JS文件也能完成簡單的表單驗證。

2、不過由于默認的提示信息是英文的,為了能有一個友好的提示,所以,接下來要做的就是讓提示信息顯示成中文了。

方法一、通過javascript自定義提示信息。

<!DOCTYPE html><html><head><script src="js/jquery.js"></script><script src="js/jquery.validate.js"></script><script> $().ready(function() { $("#registerForm").validate({  rules : {  username : {   required : true,   rangelength:[2,10]  },  password : {   required : true,   minlength:6  },  confirmpassword : {   required : true,   equalTo:"#cpassword"  },  email : {   required : true,   email : true  }  },  messages : {  username : {   required : '請輸入姓名',   rangelength:'長度在 {0} 到 {1} 之間'  },  password : {   required : '請輸入密碼',   minlength:'密碼不能少于 {0}位'  },  confirmpassword : {   required : '請再次輸入密碼',   equalTo:'兩次輸入的密碼不一致'  },  email : {   required :'請輸入郵箱',   email : '請輸入有效的電子郵件地址'  }  } }); });</script></head><body> <form id="registerForm" method="get" action=""> <fieldset>  <p>  <label for="cusername">用戶名</label>   <input id="cusername" name="username" type="text"/>  </p>  <p>  <label for="cpassword">密碼</label>   <input id="cpassword" name="password" type="password"/>  </p>  <p>  <label for="cconfirmpassword">確認密碼</label>   <input id="cconfirmpassword" name="confirmpassword" type="password"/>  </p>  <p>  <label for="cemail">郵箱</label>  <input id="cemail" name="email" type="email"/>  </p>  <p>  <input type="submit" value="提交">  </p> </fieldset> </form></body></html> 

首先這里有一個方法調用: $("#registerForm").validate([options]) ,這是用來驗證選擇的表單,方法的參數是可選項,可以輸入0個或者多個鍵值對(key/value),這個方法是為了處理例如:submit , focus ,  keyup , blur, click 觸發驗證的,對象是整個表單的元素,或者是單個元素,使用 rules 和 messages 定義驗證的元素,使用errorClass, errorElement, wrapper, errorLabelContainer, errorContainer, showErrors, success, errorPlacement, highlight, unhighlight, ignoreTitle去控制非法元素的錯誤信息顯示。其中rules里也可以輸入0個或者多個鍵值對,他的key對應的是元素的name屬性值,例如username,confirmpassword等等。而他的value里則是一些驗證規則。messages同rules一樣可以輸入0個或者多個鍵值對,他的key也是對應的元素的name屬性值,而他的value里則是驗證錯誤的提示信息。簡而言之,rules{}中定義驗證規則的方法。 messages{}中定義錯誤輸出。

上面有一點需要注意的就是  equalTo:"#cpassword",這個鍵值對里的value是元素的ID值(如果注意到#號就應該能察覺到)。

通過上面的寫法,你就可以自定義提示信息了?;蛟S你會有疑問了,難道我每次驗證表單的時候都要重新自定義提示信息嗎?當然不是了,你還可以Ctrl C+Ctrl V。這當然是玩笑話。。。不過,接下來的方法二會解決你的疑問。

方法二、自定義一份提示信息,然后保存成JS文件。把他作為模板,然后在需要的頁面直接引入就行。我是從網上下載了一份。

(function( factory ) { if ( typeof define === "function" && define.amd ) { define( ["jquery", "../jquery.validate"], factory ); } else { factory( jQuery ); }}(function( $ ) {/* * Translated default messages for the jQuery validation plugin. * Locale: ZH (Chinese, 中文 (Zhōngwén), 漢語, 漢語) */$.extend($.validator.messages, { required: "這是必填字段", remote: "請修正此字段", email: "請輸入有效的電子郵件地址", url: "請輸入有效的網址", date: "請輸入有效的日期", dateISO: "請輸入有效的日期 (YYYY-MM-DD)", number: "請輸入有效的數字", digits: "只能輸入數字", creditcard: "請輸入有效的信用卡號碼", equalTo: "你的輸入不相同", extension: "請輸入有效的后綴", maxlength: $.validator.format("最多可以輸入 {0} 個字符"), minlength: $.validator.format("最少要輸入 {0} 個字符"), rangelength: $.validator.format("請輸入長度在 {0} 到 {1} 之間的字符串"), range: $.validator.format("請輸入范圍在 {0} 到 {1} 之間的數值"), max: $.validator.format("請輸入不大于 {0} 的數值"), min: $.validator.format("請輸入不小于 {0} 的數值")});})); 

頁面的代碼和JV1.HTML幾乎是一模一樣,只是多引入了一份JS文件。

<!DOCTYPE html><html><head><script src="js/jquery.js"></script><script src="js/jquery.validate.js"></script><script src="js/messages_zh.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" required="true" rangelength="[2,10]">  </p>  <p>  <label for="cpassword">密碼</label>  <input id="cpassword" name="password" type="password" required="true" minlength="6">  </p>  <p>  <label for="cconfirmpassword">確認密碼</label>   <input id="cconfirmpassword" name="confirmpassword" type="password" required="true" equalTo="#cpassword">  </p>  <p>  <label for="cemail">郵箱</label>   <input id="cemail" name="email" required="true" email="true"> </input>  </p>  <p>  <input type="submit" value="提交">  </p> </fieldset> </form></body></html> 

方法一和方法二并不互斥,兩種方法是可以結合使用的。你可以先用方法二保存一份比較通用的模板,然后再用方法一去按具體情況來自定義提示。

以上就是我今天下午學習的收獲了。據說在新版本中,又有了新的寫法,既不需要依賴上面提到的jquery.metadata.js庫,也不需要通過javascript自定義提示信息,而是在標簽里以 data-rule-驗證規則、data-msg-提示信息 這樣的格式來重新定義。躍躍欲試......

下面是官網提供的默認校驗規則。

(1)required:true 必輸字段
(2)remote:"check.php" 使用ajax方法調用check.php驗證輸入值
(3)email:true 必須輸入正確格式的電子郵件
(4)url:true 必須輸入正確格式的網址
(5)date:true 必須輸入正確格式的日期
(6)dateISO:true 必須輸入正確格式的日期(ISO),例如:2009-06-23,1998/01/22 只驗證格式,不驗證有效性
(7)number:true 必須輸入合法的數字(負數,小數)
(8)digits:true 必須輸入整數
(9)creditcard: 必須輸入合法的信用卡號
(10)equalTo:"#field" 輸入值必須和#field相同
(11)accept: 輸入擁有合法后綴名的字符串(上傳文件的后綴)
(12)maxlength:5 輸入長度最多是5的字符串(漢字算一個字符)
(13)minlength:10 輸入長度最小是10的字符串(漢字算一個字符)
(14)rangelength:[5,10] 輸入長度必須介于 5 和 10 之間的字符串")(漢字算一個字符)
(15)range:[5,10] 輸入值必須介于 5 和 10 之間
(16)max:5 輸入值不能大于5
(17)min:10 輸入值不能小于10

好了,摸索了近兩個小時,我的第一篇隨筆到這也算是完成了。同時希望能給大家帶來靈感。

下篇文章給大家介紹jQuery Validate初步體驗(二),一起學習吧。



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

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产主播精品在线| 亚洲一品av免费观看| 欧美视频在线观看免费网址| 一夜七次郎国产精品亚洲| 亚洲国模精品一区| 97在线精品国自产拍中文| 国产精品久久久久久久久久小说| 国产精品一区电影| 亚洲最大福利视频| 狠狠操狠狠色综合网| 日韩成人av网址| 亚洲欧美激情在线视频| 亚洲精品动漫久久久久| xx视频.9999.com| 欧美激情在线狂野欧美精品| 久久久久中文字幕2018| 最新国产精品拍自在线播放| 日韩h在线观看| 亚洲美女精品成人在线视频| 高清日韩电视剧大全免费播放在线观看| 日韩中文字幕亚洲| 亚洲影院污污.| 91精品国产九九九久久久亚洲| 91九色在线视频| 成人免费自拍视频| 国产精品电影久久久久电影网| 欧美在线视频免费播放| 78色国产精品| 国内精品久久久久久| 欧美激情xxxx| 欧美日韩成人黄色| www.亚洲人.com| 欧美大肥婆大肥bbbbb| 中文精品99久久国产香蕉| 欧美视频裸体精品| 国产精品久久久久久久久久免费| 欧美精品制服第一页| 亚洲奶大毛多的老太婆| 精品日本美女福利在线观看| 久久av在线播放| 久久久极品av| 国产精品自产拍高潮在线观看| 国产精品久久久久久久9999| 久久免费高清视频| 欧美日韩国产成人在线观看| 亚洲激情久久久| 成人午夜黄色影院| 亚洲视频在线免费看| 亚洲在线视频观看| 国产精品中文字幕久久久| 亚洲激情视频在线| 高清视频欧美一级| 久久精品视频播放| 欧美极品少妇全裸体| 欧美日韩中文在线观看| 日韩精品免费综合视频在线播放| 亚洲午夜av电影| 亚洲精品一区久久久久久| 韩国精品美女www爽爽爽视频| 久久久www成人免费精品| 美女av一区二区三区| 国产有码在线一区二区视频| 国产精品一区二区在线| 成人激情视频在线观看| 亚洲免费影视第一页| 日韩av手机在线观看| 国产午夜精品久久久| 91经典在线视频| 国外成人性视频| 日韩av在线资源| 国产成人亚洲综合91精品| 大荫蒂欧美视频另类xxxx| 国产精品久久久亚洲| 国产成人精品电影| 高清一区二区三区四区五区| 国产精品99蜜臀久久不卡二区| 国产精品一区av| 欧美激情亚洲激情| 欧美大片大片在线播放| 日韩av网站导航| 97不卡在线视频| 蜜月aⅴ免费一区二区三区| 国产精品a久久久久久| 亚洲理论在线a中文字幕| 欧美黄色片在线观看| 国产精品国内视频| 亚洲视频在线观看视频| 国产成一区二区| 国产主播精品在线| 国产v综合ⅴ日韩v欧美大片| 久久亚洲精品国产亚洲老地址| 2019中文字幕在线免费观看| 国产亚洲精品综合一区91| 国产成人小视频在线观看| 国产一区二区日韩精品欧美精品| 日本成人精品在线| 国产精品久久久久久久久久东京| 日韩激情片免费| 色妞久久福利网| 91日本在线观看| 国产一区二区三区在线播放免费观看| 韩国一区二区电影| 亚洲午夜激情免费视频| 欧美日韩在线观看视频小说| 成人黄色免费在线观看| 色婷婷综合久久久久中文字幕1| 日韩高清电影免费观看完整| 欧美日本在线视频中文字字幕| 视频在线观看一区二区| 一区二区日韩精品| 精品高清一区二区三区| 色777狠狠综合秋免鲁丝| 亚洲欧洲自拍偷拍| 日韩黄在线观看| 亚洲激情成人网| 成人欧美一区二区三区黑人| 欧美日韩另类视频| 亚洲国产91色在线| 高清日韩电视剧大全免费播放在线观看| 国内成人精品一区| 九九热这里只有精品免费看| 91免费电影网站| 久久亚洲国产精品成人av秋霞| 欧美人与性动交| 美女福利视频一区| 久久成人精品电影| 国产成人福利夜色影视| 久久中文久久字幕| 久久久日本电影| 成人国产精品一区| 亚洲第一区中文99精品| 亚洲成av人乱码色午夜| 久久久精品亚洲| 亚洲天堂成人在线| 日韩激情视频在线| 精品久久久久久久久久国产| 欧美激情视频在线观看| 丰满岳妇乱一区二区三区| 亚洲男人天堂九九视频| 91精品国产综合久久香蕉最新版| 欧美激情国产精品| 欧美激情亚洲激情| 在线成人激情黄色| 精品视频偷偷看在线观看| 成人免费视频在线观看超级碰| 日韩久久精品电影| 欧美第一页在线| 亚洲欧美三级伦理| 中文日韩电影网站| 成人国产精品久久久久久亚洲| 欧美性视频网站| 亚洲自拍偷拍网址| 亚洲永久免费观看| 亚洲欧美国产精品va在线观看| 97超碰色婷婷| 久久偷看各类女兵18女厕嘘嘘| 曰本色欧美视频在线| 日本成人在线视频网址| 国产精品白嫩初高中害羞小美女| 成人在线视频福利| 国产精品福利观看| 日韩在线观看免费网站| 91po在线观看91精品国产性色| 成人综合国产精品|