2012-03-10 3 views
0

私は控えめなjqueryの検証とasp.net mvc 3を使用しています。私は、さまざまな必須属性やその他のデータアノテーションを含むモデルのためのフォームを持っています。Jqueryはブロックフォームのサブミットを検証します

I問題がフォームが検証され(そしてエラーは必須フィールドなどのために表示されます)、その後、フォームがエラーの原因となっている提出されるということであるので

<script type="text/javascript"> $(document).ready(function() { 
    $('form').submit(function(e) { 
     e.preventDefault();   

     var user = { 
      UserName: $('#@(Html.IdFor(m => m.UserName))').val(), 
      Password: $('#@(Html.IdFor(m => m.Password))').val(), 
      RememberMe: $('#@(Html.IdFor(m => m.RememberMe))').val(), 
      returnUrl: '@Request.Url.PathAndQuery' 
     }; 

     $('#loginform').hide(); 
     $('#loading').show(); 

     $.ajax({ 
      url: '@Url.Action("LogOn", "Account")', 
      type: 'POST', 
      data: JSON.stringify(user), 
      dataType: 'json', 
      processData: false, 
      contentType: 'application/json;charset=utf-8', 
      success: function(data) { 
       if (data.returnUrl) { 
        window.location.href = data.returnUrl; 
       } else { 
        $("#loginform").replaceWith(data); 
       } 

      }, 
      error: function(jqXhr, textStatus, errorThrown) { 
       alert("There was an error logging in :'" + jqXhr.status + "' (textStatus: '" + textStatus + "', errorThrown: '" + errorThrown + "')"); 
      }, 
      complete: function() { 
       $('#loginform').show(); 
       $('#loading').hide(); 
      } 
     }); 
    }); 
}); </script> 

ようにjQueryを使用してこのフォームを送信してい。

jqueryを変更して、この送信を実行する前にフォームが有効であることを確認するにはどうすればよいですか?

答えて

0

フォームが有効な場合はtrue/falseを返すif($( 'form')。valid())を呼び出します。

関連する問題