1. 程式人生 > >jquery.validate.js中文使用詳解

jquery.validate.js中文使用詳解

jQuery plugin: Validation 使用說明  

一匯入js庫

記得把這些js放到你的專案中去
<script src="../js/jquery.js" type="text/JavaScript"></script>
<script src="../js/jquery.validate.js" type="text/javascript"></script>

二、預設校驗規則
(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/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

三、預設的提示
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}.")
},

如需要修改,可在js程式碼中加入:

jQuery.extend(jQuery.validator.messages, {
  required: "必選欄位",
  remote: "請修正該欄位",
  email: "請輸入正確格式的電子郵件",
  url: "請輸入合法的網址",
  date: "請輸入合法的日期",
  dateISO: "請輸入合法的日期 (ISO).",
  number: "請輸入合法的數字",
  digits: "只能輸入整數",
  creditcard: "請輸入合法的信用卡號",
  equalTo: "請再次輸入相同的值",
  accept: "請輸入擁有合法字尾名的字串",
  maxlength: jQuery.validator.format("請輸入一個 長度最多是 {0} 的字串"),
  minlength: jQuery.validator.format("請輸入一個 長度最少是 {0} 的字串"),
  rangelength: jQuery.validator.format("請輸入 一個長度介於 {0} 和 {1} 之間的字串"),
  range: jQuery.validator.format("請輸入一個介於 {0} 和 {1} 之間的值"),
  max: jQuery.validator.format("請輸入一個最大為{0} 的值"),
  min: jQuery.validator.format("請輸入一個最小為{0} 的值")
});

推薦做法,將此檔案放入messages_cn.js中,在頁面中引入
<script src="../js/messages_cn.js" type="text/javascript"></script>

四、使用方式
1.將校驗規則寫到控制元件中

複製程式碼 <script src="../js/jquery.js" type="text/javascript"></script>
<script src="../js/jquery.validate.js" type="text/javascript"></script>
<script src="./js/jquery.metadata.js" type="text/javascript"></script>

$().ready(function() {
 $("#signupForm").validate();
});


<form id="signupForm" method="get" action="">
    <p>
        <label for="firstname">Firstname</label>
        <input id="firstname" name="firstname" class="required"/>
    </p>
 <p>
  <label for="email">E-Mail</label>
  <input id="email" name="email" class="required email"/>
 </p>
 <p>
  <label for="password">Password</label>
  <input id="password" name="password" type="password" class="{required:true,minlength:5}"/>
 </p>
 <p>
  <label for="confirm_password">確認密碼</label>
  <input id="confirm_password" name="confirm_password" type="password" class="{required:true,minlength:5,equalTo:'#password'}"/>
 </p>
    <p>
        <input class="submit" type="submit" value="Submit"/>
    </p>
</form> 複製程式碼

使用class="{}"的方式,必須引入包:jquery.metadata.js

可以使用如下的方法,修改提示內容:
class="{required:true,minlength:5,messages:{required:'請輸入內容'}}"

在使用equalTo關鍵字時,後面的內容必須加上引號,如下程式碼:
class="{required:true,minlength:5,equalTo:'#password'}"

2.將校驗規則寫到js程式碼中

複製程式碼 $().ready(function() {
 $("#signupForm").validate({
        rules: {
   firstname: "required",
   email: {
    required: true,
    email: true
   },
   password: {
    required: true,
    minlength: 5
   },
   confirm_password: {
    required: true,
    minlength: 5,
    equalTo: "#password"
   }
  },
        messages: {
   firstname: "請輸入姓名",
   email: {
    required: "請輸入Email地址",
    email: "請輸入正確的email地址"
   },
   password: {
    required: "請輸入密碼",
    minlength: jQuery.format("密碼不能小於{0}個字 符")
   },
   confirm_password: {
    required: "請輸入確認密碼",
    minlength: "確認密碼不能小於5個字元",
    equalTo: "兩次輸入密碼不一致不一致"
   }
  }
    });
}); 複製程式碼

//messages處,如果某個控制元件沒有message,將呼叫預設的資訊

複製程式碼 <form id="signupForm" method="get" action="">
    <p>
        <label for="firstname">Firstname</label>
        <input id="firstname" name="firstname"/>
    </p>
 <p>
  <label for="email">E-Mail</label>
  <input id="email" name="email"/>
 </p>
 <p>
  <label for="password">Password</label>
  <input id="password" name="password" type="password"/>
 </p>
 <p>
  <label for="confirm_password">確認密碼</label>
  <input id="confirm_password" name="confirm_password" type="password"/>
 </p>
    <p>
        <input class="submit" type="submit" value="Submit"/>
    </p>
</form> 複製程式碼

required:true 必須有值
required:"#aa:checked"表示式的值為真,則需要驗證
required:function(){}返回為真,表時需要驗證
後邊兩種常用於,表單中需要同時填或不填的元素

五、常用方法及注意問題
1.用其他方式替代預設的SUBMIT
$().ready(function() {
 $("#signupForm").validate({
        submitHandler:function(form){
            alert("submitted");   
            form.submit();
        }    
    });
});

使用ajax方式

 $(".selector").validate({     
 submitHandler: function(form) 
   {      
      $(form).ajaxSubmit();     
   }  
 }) 

可以設定validate的預設值,寫法如下:
$.validator.setDefaults({
 submitHandler: function(form) { alert("submitted!");form.submit(); }
});

如果想提交表單, 需要使用form.submit()而不要使用$(form).submit()

2.debug,只驗證不提交表單
如果這個引數為true,那麼表單不會提交,只進行檢查,除錯時十分方便

$().ready(function() {
 $("#signupForm").validate({
        debug:true
    });
});
如果一個頁面中有多個表單都想設定成為debug,用
$.validator.setDefaults({
   debug: true
})

3.ignore:忽略某些元素不驗證
ignore: ".ignore"
4.更改錯誤資訊顯示的位置
errorPlacement:Callback

 Default: 把錯誤資訊放在驗證的元素後面 
指明錯誤放置的位置,預設情況是:error.appendTo(element.parent());即把錯誤資訊放在驗證的元素後面 
errorPlacement: function(error, element) {  
    error.appendTo(element.parent());  
}

//示例:

複製程式碼 <tr>
    <td class="label"><label id="lfirstname" for="firstname">First Name</label></td>
    <td class="field"><input id="firstname" name="firstname" type="text" value="" maxlength="100"/></td>
    <td class="status"></td>
</tr>
<tr>
    <td style="padding-right: 5px;">
        <input id="dateformat_eu" name="dateformat" type="radio" value="0"/>
        <label id="ldateformat_eu" for="dateformat_eu">14/02/07</label>
    </td>
    <td style="padding-left: 5px;">
        <input id="dateformat_am" name="dateformat" type="radio" value="1"/>
        <label id="ldateformat_am" for="dateformat_am">02/14/07</label>
    </td>
    <td></td>
</tr>
<tr>
    <td class="label">&nbsp;</td>
    <td class="field" colspan="2">
        <div id="termswrap">
            <input id="terms" type="checkbox" name="terms"/>
            <label id="lterms" for="terms">I have read and accept the Terms of Use.</label>
        </div>
    </td>
</tr>

errorPlacement: function(error, element) {
    if ( element.is(":radio") )
        error.appendTo( element.parent().next().next() );
    else if ( element.is(":checkbox") )
        error.appendTo ( element.next() );

相關推薦

jquery.validate.js中文使用

jQuery plugin: Validation 使用說明   一匯入js庫 記得把這些js放到你的專案中去 <script src="../js/jquery.js" type="text/JavaScript"></script> <script

jQuery Validate驗證框架

lec false 樣式 廈門 adding 常用 invalid util 類名 jQuery校驗官網地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation 一、導入js庫 <scri

jQuery Validate.JS後不用再為正則驗證頭疼

url 理解 程序 valid 客戶 pre 提高 -s log jQuery Validate 是功能豐富的正則驗證插件,為客戶端提供了強大的驗證功能,同時提供了大量的正則選項,滿足應用程序各種需求。該插件捆綁了一整套有用的驗證方法,同時包括URL驗證和電子郵件驗證,為

JSjquery.dataTables.bootstrap外掛

dataTable介紹 DataTables is a plug-in for the jQuery Javascript library. It is a highly flexible tool, build upon the foundations of progressiv

jQuery驗證控制元件jquery.validate.js使用說明+中文API

一匯入js庫 <script src="../js/jquery.js" type="text/javascript"></script> <script src="../js/jquery.validate.js" type="text/javascript">&l

Node.js npm

maven鏡像 cache 需要 nag ebr target 建立 npm bin Node.js npm 詳解 一、npm簡介 安裝npm請閱讀前輩的文章,很詳細的介紹。 npm的全稱:Node Package Manager. (1)通俗的理解 其實從字面意思就可以理

jQuery.extend 函數

而且 卻又 命名空間 什麽 介紹 常用 new end 空間 JQuery的extend擴展方法: Jquery的擴展方法extend是我們在寫插件的過程中常用的方法,該方法有一些重載原型,在此,我們一起去了解了解。 一、Jquery的擴展方法原型是: 

驗證插件——jquery.validate.js

上傳文件 type=file load net ida 焦點 tro file date 下載地址:http://download.csdn.net/download/s592652578/9457421 教程:http://www.runoob.com/jquery/jq

Jquery.validate.js表單驗證

first 博客 插件 怎麽辦 row form表單 顯示 ble logs 前言:表單驗證是十分常見的需求。公司做運維系統需要大量的編輯/新增表單,編輯之後提交,提交前需要進行表單驗證,驗證成功才能發起POST請求。由於項目前端大部分是基於Bootstrap開發的,

Nginx配置文件nginx.conf中文

free /var/ /dev/ 配置文件 passwd 運行 bus body 虛擬主機 #定義Nginx運行的用戶和用戶組user www www; #nginx進程數,建議設置為等於CPU總核心數。worker_processes 8; #全局錯誤日誌定義類型,[

(轉)js prototype

不同 腳本語言 ava type 部分 load 錯誤 並且 per 轉載自:http://blog.csdn.net/chaojie2009/article/details/6719353 (也是轉載的。鄙視一下此人轉載不著名出處。) 註意:必須帶著懷疑的態度去看這篇文章

jquery.validate.js

war may cred row target lan nta true its /* * jQuery validation plug-in 1.5.2 * * http://bassistance.de/jquery-plugins/jquery-plugin-vali

Jquery之事件委派

spa 性能優化 實現 機制 過濾 event n) function 通過    最近接觸Jquery比較多,今天就被一個Jquery的事件委派坑慘了,特此記錄下,以方便日後的查閱。 一、定義 事件委派的定義就是,把原來加給子元素身上的事件綁定在父元素身上,就是把事件委

dva.js 用法:列表展示

def bpa clas 開發 cal switch lan 點擊 code 本教程案例github:https://github.com/axel10/dva_demo-Counter-and-list/tree/master 這次主要通過在線獲取用戶數據並且渲染成列

HTTP Response Code 中文

mod 找到 cat 篩選 ssl 權限 div servle 定向 引自:https://blog.csdn.net/lplj717/article/details/70053560 1xx - 信息提示這些狀態代碼表示臨時的響應。客戶端在收到常規響應之前,應準備

Linux Samba服務主配文件smb.conf中文【轉】

except 共享資源 參考 -s 開啟 eve crypt 詳解 pat 轉自:https://blog.csdn.net/maotianwang/article/details/52524732 從網上找到描述比較詳細的smb.conf中文解釋: 服務

js this

type 綁定 方式 .get title lang length con tle this,當前觸發事件的標簽 在綁定事件中的兩種用法:   a. 直接HTML中的標簽裏綁定 onclick="fun1()";   b. 先獲取

jQuery筆記-jQuery篩選器children()

選擇 jquery篩選 標簽 其中 toolbar ima 成了 query ava jQuery的選擇包含兩種,一種是選擇器,一種是篩選器。篩選器是對選擇器選定的jQuery對象做進一步選擇。children()是一個篩選器,顧名思義就是

(總結)Nginx配置文件nginx.conf中文

頁面 ulimit 正常 index.php 獲取 權重 bsd types keepal PS:Nginx使用有兩三年了,現在經常碰到有新用戶問一些很基本的問題,我也沒時間一一回答,今天下午花了點時間,結合自己的使用經驗,把Nginx的主要配置參數說明分享一下,也參考了一

jQuery.validate.js表單驗證插件

gnu back view align one tom scrip ddd ali jQuery.validate.js表單驗證插件的使用 效果: 代碼: <!DOCTYPE html> <html lang="en"> <hea