2012-10-26 61 views
0

我有這樣的場景:JQuery的驗證插件 - 上的按鈕進行添加規則點擊

在一個頁面上有兩個文本框(沒有fromdate和todate品),顯示的JQuery的DatePicker的onkeydown,和下面這些文本框我有一個提交按鈕。

一旦加載頁面時,我不希望這些日期文本框,對規則進行驗證,但我想,以確保JQuery的驗證工作對我來說就按一下按鈕。

我不得不解僱在頁面加載驗證,以確保其他規則被解僱,像許多現有頁面上的其他控件一次加載頁面時進行驗證。

一種方式我認爲在點擊按鈕添加規則,但似乎驗證加載它們和鉤他們早得多,所以即使同一對象(有額外的規則)更新,它不工作。

請幫助它是如何做到的?提前致謝。

+0

一個想法是當你點擊按鈕來匹配驗證器的規則時,改變文本框的ID。在頁面加載時,它們不會被檢查,因爲ID不符合規則,然後在'點擊'時選擇文本框(例如按類)並替換爲匹配的ID(例如從ID末尾刪除「-temp」或類似的東西)。 – st3inn

回答

1

處理這種情況,我刪除這是基於事件的,從頁面加載規則的規則。我動態地添加/刪除了規則。下面的代碼示例:

var Date1= { 
     required: true, 
     dateLesser: 'Date2', 
     messages: { 
      required: 'What ever', 
      dateLesserThan: 'Date Should be less than' 
     } 
    }; 

addDateValidationRules: function (d) { 
    if (d== 2) { 
     $('#Date1').rules("add", Date1); 
     $('#Date2').rules("add", Date2); 
    } 
    else { 
     $('#Date1').rules("remove", "required"); 
     $('#Date1').rules("remove", "dateLesser"); 
     $('#Date2').rules("remove", "required"); 
     $('#Date2').rules("remove", "dateGreater"); 
    } 
} 

希望它有助於某人。

謝謝。