国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 網(wǎng)站 > WEB開發(fā) > 正文

jqueryvalidate插件高級(jí)表單驗(yàn)證

2024-04-27 15:01:46
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

Validation(validate)插件提供了另一種方法來(lái)為一個(gè)表單添加驗(yàn)證,而不需要改變字段的HTML。此外,這個(gè)插件提供了廣泛的附加選項(xiàng)來(lái)控制它如何工作。我們通過(guò)給validate()函數(shù)傳遞一個(gè)對(duì)象直接量來(lái)設(shè)置這些選項(xiàng),其中包含了每個(gè)選項(xiàng)的單獨(dú)對(duì)象。例如,要指定一條驗(yàn)證規(guī)則,我們包含了該規(guī)則的代碼的一個(gè)對(duì)象。首先,緊跟著validation函數(shù)的第一個(gè)圓括號(hào)的后面,我們包含一個(gè)開始花括號(hào),并且在函數(shù)的結(jié)束圓括號(hào)的前面,放置一個(gè)結(jié)束花括號(hào)。

  1. $('idOfForm').validate({
  2. //options go in here
  3. });//end validate();

這對(duì)花括號(hào)表示一個(gè)對(duì)象直接量,它將包含選項(xiàng)設(shè)置。以這種方式使用Validation可能有點(diǎn)容易令人混淆,要理解插件的作者想要它如何工作,最好方法是看一個(gè)簡(jiǎn)單的示例,如圖9-6所示。

圖 9-6 即便使用這樣一個(gè)簡(jiǎn)單的表單,也可以使用Validation插件的高級(jí)選項(xiàng)實(shí)現(xiàn)更好的控制

提示:我們可以把jquery validate基本驗(yàn)證方法http://www.uphtm.com/js/432.html和這里所介紹的高級(jí)驗(yàn)證方法組合到同一個(gè)表單上。對(duì)于只有一條驗(yàn)證規(guī)則和錯(cuò)誤消息的字段,可以使用基本驗(yàn)證方法,因?yàn)樗芸旖荩皇菍?duì)于更為復(fù)雜的驗(yàn)證使用高級(jí)驗(yàn)證方法。

圖9-6中的表單的HTML如下所示:

  1. <form action="PRocess.php"method="post"id="signup">
  2. <div>
  3. <label for="name">Name</label>
  4. <input name="name"type="text">
  5. </div>
  6. <div>
  7. <label for="email">E-mail Address</label>
  8. <input name="email"type="text">
  9. </div>
  10. <div>
  11. <input type="submit"name="submit"value="Submit">
  12. </div>
  13. </form>

這個(gè)表單包含兩個(gè)文本字段,以粗體顯示,一個(gè)用于人的名字,一個(gè)用于E-mail地址。本小節(jié)處理這兩個(gè)字段的驗(yàn)證,使用高級(jí)規(guī)則來(lái)確保名字字段和E-mail字段都填充了并且格式正確。

注意:可以在http://docs.jquery.com/Plug-ins/Validation/validate#options找到Validation插件的一個(gè)完整的選項(xiàng)列表。

validate高級(jí)規(guī)則

指定驗(yàn)證規(guī)則的高級(jí)方法包括,傳遞一個(gè)對(duì)象,其中包含了表單字段名字和驗(yàn)證規(guī)則或想要應(yīng)用到該字段的規(guī)則。該對(duì)象的基本結(jié)構(gòu)如下所示:

  1. rules:{
  2. fieldname:'validationType'
  3. }

對(duì)象名為rules,其中,可以指定字段以及想要應(yīng)用到該字段的驗(yàn)證類型。然后,整個(gè)對(duì)象傳遞給validate()函數(shù)。例如,在圖9-6所示的表單中,為了讓名字字段成為必需的,可以對(duì)前面所述的字段應(yīng)用validate()函數(shù),然后把rules對(duì)象傳遞給該函數(shù),如下所示:

  1. $('#signup').validate({
  2. rules:{
  3. name:'required'
  4. }
  5. });//end validate()

在這個(gè)例子中,字段的名字為name,并且規(guī)則指定了這個(gè)字段是必需的。要對(duì)一個(gè)表單字段應(yīng)用多個(gè)驗(yàn)證規(guī)則,必須為該字段創(chuàng)建另一個(gè)對(duì)象。例如,要針對(duì)圖9-6中的表單擴(kuò)展驗(yàn)證規(guī)則,可以添加一條規(guī)則,不僅使得email字段是必需的,而且也指定了E-mail地址必須是有效的格式:

  1. 1$('#signup').validate({
  2. 2 rules:{
  3. 3 name:'required',
  4. 4 email:{
  5. 5 required:true,
  6. 6 email:true
  7. 7}
  8. 8}
  9. 9});//end validate()
  10. //原文:www.uphtm.com

注意:根據(jù)javaScr

  • }
  • });//end validate()
  • //原文:www.uphtm.com
  • 如果還想讓birthday字段是必需的,可以把代碼做如下調(diào)整:

    1. $('#signup').validate({
    2. rules:{
    3. name:'required',
    4. email:{
    5. required:true,
    6. email:true
    7. },
    8. birthday:{
    9. date:true,
    10. required:true
    11. }
    12. }
    13. });//end validate()
    14. //原文:www.uphtm.com

    正如前面提到的,可以對(duì)高級(jí)驗(yàn)證規(guī)則所做的最強(qiáng)大和有用的事情是,要求訪問(wèn)者的輸入具有某個(gè)最小或最大長(zhǎng)度。例如,在一個(gè)投訴報(bào)告表單上,我們可能想要限制評(píng)論長(zhǎng)度,例如,200個(gè)字符,這樣,客戶會(huì)切中要點(diǎn)而不是長(zhǎng)篇大論。也有規(guī)則可以確保輸入的數(shù)字在某個(gè)范圍內(nèi),(轉(zhuǎn)載請(qǐng)注明出處:http://www.uphtm.com/js/433.html)因此,如果表單不是要足夠容易以供古人使用的話,我們不接受1900年以前的出生日期。

    ·minlength。這個(gè)字段必須包含至少指定的數(shù)目的字符。例如,確保一個(gè)字段至少輸入了6個(gè)字符的規(guī)則是:

    1. minlength:6

    ·maxlength。這個(gè)字段必須包含不多于指定數(shù)目的字符。例如,確保輸入到字段中的字符不超過(guò)100個(gè)的規(guī)則是:

    1. maxlength:100

    ·rangelength。minlength和maxlength的一個(gè)組合。指定了一個(gè)字段中所允許的最小字符數(shù)和最大字符數(shù)。例如,確保一個(gè)字段包含至少6個(gè)字符而不超過(guò)100個(gè)字符的規(guī)則是:

    1. rangelength:[6,100]

    ·min。要求字段包含一個(gè)數(shù)值,并且等于或大于指定的數(shù)值。例如,如下的規(guī)則要求字段包含一個(gè)數(shù)值,并且該數(shù)值大于或等于10。

    1. min:10

    在這個(gè)例子中,如果訪問(wèn)者輸入8,字段無(wú)法通過(guò)驗(yàn)證,因?yàn)?小于10。同理,如果訪問(wèn)者輸入一個(gè)單詞eight,那么字段也無(wú)法通過(guò)驗(yàn)證,并且會(huì)產(chǎn)生一條錯(cuò)誤消息。

    ·max。和min一樣,但是指定了字段可以包含的最大的值。例如,要確保一個(gè)字段包含的值小于1000,可以使用如下規(guī)則:

    1. max:1000

    ·range。組合了min和max來(lái)指定字段必須包含的最小值和最大值。例如,要確保一個(gè)字段包含至少10但不超過(guò)1000的數(shù)值,可以使用:

    1. range:[10,1000]

    ·equalTo。要求一個(gè)字段內(nèi)容匹配其他字段。例如,在一個(gè)登錄表單上,通常要求訪問(wèn)者輸入一個(gè)密碼然后通過(guò)再次輸入密碼來(lái)驗(yàn)證它。通過(guò)這種方式,訪問(wèn)者可以確保第一次沒有輸錯(cuò)密碼。要使用這個(gè)方法,必須指定一個(gè)字符串,其中包含有效的選擇器。例如,假設(shè)第一個(gè)密碼字段有一個(gè)ID為passWord。如果想要確保“驗(yàn)證密碼”字段和第一個(gè)密碼字段匹配,可以使用這段代碼:

    1. equalTo:’#password'

    可以組合使用這些高級(jí)驗(yàn)證規(guī)則。只要一次處理一個(gè)字段就行了。這里有它們?nèi)绾我黄鸸ぷ鞯囊粋€(gè)例子。假設(shè)有一個(gè)表單包含了兩個(gè)字段,一個(gè)用于創(chuàng)建密碼,另一個(gè)用于確認(rèn)密碼。這兩個(gè)字段的HTML如下所示:

    1. <input name="password"type="password"id="password">
    2. <input name="confirm_password"type="password"id="confirm_password">

    這兩個(gè)字段都是必需的,并且密碼必須至少有8個(gè)字符,但是不超過(guò)16個(gè)字符。最后,我們要確保“確認(rèn)密碼”字段匹配其他的密碼字段。假設(shè)表單的ID為signup,可以使用如下代碼驗(yàn)證這兩個(gè)字段:

    1. $('#signup').validate({
    2. rules:{
    3. password:{
    4. required:true,
    5. rangelength:[8,16]
    6. },
    7. confirm_password:{
    8. equalTo:’#password'
    9. }
    10. }
    11. });//end validate()

    轉(zhuǎn)載請(qǐng)注明出處:http://www.uphtm.com/js/433.html


    發(fā)表評(píng)論 共有條評(píng)論
    用戶名: 密碼:
    驗(yàn)證碼: 匿名發(fā)表
    主站蜘蛛池模板: 新建县| 大方县| 奉新县| 桐庐县| 合江县| 梓潼县| 贵州省| 南岸区| 普定县| 伊宁市| 武义县| 沾化县| 穆棱市| 双城市| 井陉县| 城步| 武隆县| 兴国县| 浦江县| 丁青县| 广德县| 蛟河市| 永德县| 海阳市| 易门县| 志丹县| 防城港市| 昌吉市| 五台县| 怀化市| 金阳县| 来宾市| 桂林市| 溆浦县| 岢岚县| 武汉市| 桂平市| 新平| 新沂市| 都江堰市| 天峻县|