2011-10-24 17 views
1

asp.net MVC3プロジェクトにページがあります。ページには3つのdivがあり、各divにはいくつかの入力フィールドがあります。これらのdivはタブナビゲーションでアクセスされ、次のボタンをクリックすると各divに次のボタンがあります。ユーザーはjqueryで次のタブに移動します。最後のタブには、すべてのdivフィールドのデータを一度に送信する送信ボタンがあります。Asp.net MVC3検証イベントコール

また、この入力ボタンのクリックですべての入力フィールドの検証が行われます。これらの検証は、jquery.validate.jsとモデルクラスの検証属性を使用して行われます。

ここで問題となるのは、各divのすべての検証が、各divの[次へ]ボタンクリックで表示される必要があるということです。ユーザーはすべての検証をクリアするまで、次のタブに移動できません。

ここで私の質問は、次のボタンクリックで検証イベントを引き起こすことができますか?ここでの制約は次のボタンです。次のタブに移動するデータは投稿されません 次のタブに移動します。

答えて

1

各タブの次のボタンをハイジャックして、タブのフィールドを個別に検証することができます。いずれかが失敗した場合は、移動を停止します。

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

ありがとうございました。フォームが1つしかなく、すべての部門がこのフォームにあります。最終送信ボタンもサーバーにデータを送信していません。最後のサブミットボタンのポストメソッドと次のボタンのポストメソッドを区別する方法は? – pramodtech