2011-10-24 41 views
1

我在asp.net MVC3項目中有一個頁面。該頁面有3個div,每個div都有一些輸入字段。這些div通過標籤導航進行訪問,並且每個div中都有下一個按鈕,點擊下一步按鈕用戶通過jquery導航到下一個標籤頁。在最後一個選項卡上有提交按鈕,它一次提交來自所有div字段的數據。Asp.net MVC3驗證事件調用

此外,所有輸入字段驗證發生在此提交按鈕單擊。這些驗證是通過在模型類中使用jquery.validate.js和驗證屬性完成的。

現在這裏的問題是客戶端希望每個div的所有驗證都應顯示在各個div的下一個按鈕單擊上,直到他清除所有驗證後,才允許用戶移動到下一個選項卡。

我在這裏的問題是如何觸發下一個按鈕單擊驗證事件?這裏的約束是Next按鈕不會發布數據,它只是導航到下一個選項卡。

回答

1

您可以嘗試劫持每個選項卡上的下一個按鈕並單獨驗證選項卡上的字段。如果其中任何一個失敗,則阻止他們繼續前進。

$('#tab1').click(function (e) { 
     if (!$("#myform").validate().element("#specificField")){ 
     e.preventDefault(); 
     } 
    }); 
+0

感謝WooHoo,因爲只有一個表格,所有的div都在這個表格裏面,所以最終提交按鈕也不會發布數據到服務器。如何區分最終提交按鈕的發佈方法和下一個按鈕的發佈方法? – pramodtech