首頁 >web前端 >js教程 >深入學習jQuery Validate表單驗證_jquery

深入學習jQuery Validate表單驗證_jquery

WBOY
WBOY原創
2016-05-16 15:19:341492瀏覽

本文實例介紹了jQuery Validate表單驗證,主要是利用jquery.metadata.js將校驗規則直接寫在class屬性裡面並定義錯誤訊息的提示,分享給大家供大家參考,具體內容如下

1、增加一個另外一個外掛程式jquery.metadata.js 並把校驗規則寫在控制項裡面。
2、需要改寫觸發校驗的方式。

$("#commentForm").validate({meta: "validate"});

3、詳細程式碼如下:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <title>jQuery表单验证插件----利用jquery.metadata.js将校验规则写到控件中</title>
 <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script>
 <script src="lib/jquery.validate.js" type="text/javascript"></script>
<script src="lib/jquery.metadata.js" type="text/javascript"></script>
<style type="text/css">
* { font-family: Verdana; font-size: 96%; }
label { width: 10em; float: left; }
label.error { float: none; color: red; padding-left: .5em; vertical-align: top; }
p { clear: both; }
.submit { margin-left: 12em; }
em { font-weight: bold; padding-right: 1em; vertical-align: top; }
</style>
 <script type="text/javascript">
 $(document).ready(function(){

   $("#commentForm").validate({meta: "validate"});
  
 });
 </script>
 
</head>
<body>
 

 <form class="cmxform" id="commentForm" method="get" action="">
 <fieldset>
  <legend>jQuery表单验证插件----利用jquery.metadata.js将校验规则写到控件中</legend>
  <p>
   <label for="cusername">姓名</label>
   <em>*</em><input id="cusername" name="username" size="25" class="{validate:{required:true, minlength:2}}" />
  </p>
  <p>
   <label for="cemail">电子邮件</label>
   <em>*</em><input id="cemail" name="email" size="25"  class="{validate:{required:true, email:true}}" />
  </p>
  <p>
   <label for="curl">网址</label>
   <em> </em><input id="curl" name="url" size="25" value=""  class="{validate:{url:true}}" />
  </p>
  <p>
   <label for="ccomment">你的评论</label>
   <em>*</em><textarea id="ccomment" name="comment" cols="22" class="{validate:{required:true}}" ></textarea>
  </p>
  <p>
   <input class="submit" type="submit" value="提交"/>
  </p>
 </fieldset>
 </form>
</body>
</html>

預設校驗規則:

  • (1)required:true               必輸欄位
  • (2)remote:"check.php"          使用ajax方法呼叫check.php驗證輸入值
  • (3)email:true                  必須輸入正確格式的電子郵件
  • (4)url:true                     ,必須輸入且正確格式的網址
  • (5)date:true                     .上正確格式中的日期中所學問ie6出錯,請慎用
  • (6)dateISO:true               必須輸入正確格式的日期(ISO),例如:2009-06-23,1998/01/2222223223,1998/01/222223,1998/01/2222223,1998/01/222223,1998/01/222223,1998/01/22223,1998/01/22223,398/01/2223,398/01/2223,398/01/2223點驗證🎜>
  • (7)number:true                 必須輸入合法的數字(負數,小數)
  • (8)digits:true                 必須輸入整數
  • (9)creditcard:                 必須輸入合法的信用卡號
  • (10)equalTo:"#field"           輸入值必須與#field相同
  • (11)accept:                   .已輸入擁有合法後綴的字串(「上傳」文件的字尾)
  • (12)maxlength:5                輸入長度中且長度最多的字串(漢字算數)
  • (13)minlength:10               輸入長度中最小是10的字串(漢字算數)
  • (14)rangelength:[5,10]         輸入長度必須介於 5 和 10 之間的字串")(漢字算字)

  • (15)range:[5,10]               輸入值必須介於 5 與 10 之間


(16)max:5                      的值輸入值不能大於5
messages: {
  required: "This field is required.",
  remote: "Please fix this field.",
  email: "Please enter a valid email address.",
  url: "Please enter a valid URL.",
  date: "Please enter a valid date.",
  dateISO: "Please enter a valid date (ISO).",
  dateDE: "Bitte geben Sie ein g眉ltiges Datum ein.",
  number: "Please enter a valid number.",
  numberDE: "Bitte geben Sie eine Nummer ein.",
  digits: "Please enter only digits",
  creditcard: "Please enter a valid credit card number.",
  equalTo: "Please enter the same value again.",
  accept: "Please enter a value with a valid extension.",
  maxlength: $.validator.format("Please enter no more than {0} characters."),
  minlength: $.validator.format("Please enter at least {0} characters."),
  rangelength: $.validator.format("Please enter a value between {0} and {1} characters long."),
  range: $.validator.format("Please enter a value between {0} and {1}."),
  max: $.validator.format("Please enter a value less than or equal to {0}."),
  min: $.validator.format("Please enter a value greater than or equal to {0}.")
},

(17)min:10                     輸入值上使用小於10




預設提示:
class="{required:true,minlength:5,messages:{required:'请输入内容'}}"


4、效果圖如下:
class="{required:true,minlength:5,equalTo:'#password'}"


5、注意:
使用 class="{}" 的方式,必須引入套件:jquery.metadata.js。
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>jQuery表单验证插件----利用jquery.metadata.js将校验规则写到控件中(2)</title>
 <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script>
 <script src="lib/jquery.validate.js" type="text/javascript"></script>
<script src="lib/jquery.metadata.js" type="text/javascript"></script>
<style type="text/css">
* { font-family: Verdana; font-size: 96%; }
label { width: 10em; float: left; }
label.error { float: none; color: red; padding-left: .5em; vertical-align: top; }
p { clear: both; }
.submit { margin-left: 12em; }
em { font-weight: bold; padding-right: 1em; vertical-align: top; }
</style>

 <script type="text/javascript">
 $(document).ready(function(){

   $("#commentForm").validate({meta: "validate"});
  
 });
 </script>
 
</head>
<body>
 

 <form class="cmxform" id="commentForm" method="get" action="">
 <fieldset>
  <legend>jQuery表单验证插件----利用jquery.metadata.js将校验规则写到控件中(2)</legend>
  <p>
   <label for="cusername">姓名</label>
   <em>*</em><input id="cusername" name="username" size="25" class="{validate:{required:true, minlength:2, messages:{required:'请输入姓名', minlength:'请至少输入两个字符'}}}" />
  </p>
  <p>
   <label for="cemail">电子邮件</label>
   <em>*</em><input id="cemail" name="email" size="25"  class="{validate:{required:true, email:true, messages:{required:'请输入电子邮件', email:'请检查电子邮件的格式'}}}" />
  </p>
  <p>
   <label for="curl">网址</label>
   <em> </em><input id="curl" name="url" size="25" value=""  class="{validate:{url:true, messages:{url:'请检查网址的格式'}}}" />
  </p>
  <p>
   <label for="ccomment">你的评论</label>
   <em>*</em><textarea id="ccomment" name="comment" cols="22" class="{validate:{required:true, messages:{required:'请输入您的评论'}}}" ></textarea>
  </p>
  <p>
   <input class="submit" type="submit" value="提交"/>
  </p>
 </fieldset>
 </form>
</body>
</html>

可以使用以下的方法,修改提示內容:
使用 equalTo 關鍵字時,後面的內容必須加上引號,程式碼如下所示: 6.直接在class屬性裡面定義錯誤訊息的提示。

7、效果如下:

 

以上就是本文的全部內容,希望對大家學習jQuery Validate表單驗證有所幫助,最近更新了不少關於jQuery Validate表單驗證的文章,大家可以結合進行學習。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn