2011-10-21 14 views
5

皆さん、MVC 3:検証が完了した後、実際の投稿の前にjavascriptを実行していますか?

私はクライアント側の検証が成立した後に何かを確認するためにユーザに尋ねる必要MVC3データ入力フォームシナリオを持っていますが、前にポストのサーバーに。

バリデーションフレームワークがポストバックを与えるが、ポストバックが起こる前に一連のイベントにjavascriptを挿入する方法はありますか?

(そしてもちろん、ユーザが確認を拒否した場合、ポストバックあまりにも、キャンセルすることがある。)

感謝します。

答えて

11

あなたは、対応するフォームの.submitイベントにサブスクライブし、それが有効であるかどうかを確認できます。

$(function() { 
    $('form').submit(function() { 
     if ($(this).valid()) { 
      // client validation passed successfully 
     } else { 
      alert('there was an error during client validation'); 
      // cancel the submission of the form 
      return false; 
     } 
    }); 
}); 

またはフォームの提出のためにサブスクライブしたくないと確認したい場合クライアントの検証が特定のフォームに合格した場合は、常に次のように確認できます。

var isValid = $('#someFormId').valid(); 
+0

ありがとうございます!それはまさに私が知る必要があったものでした! –

関連する問題