2012-03-10 123 views
0

我使用asp.net mvc 3與不顯眼的jQuery驗證。我有一個適用於包含各種必需屬性和其他數據註釋的模型的表單。jquery驗證塊表單提交

我使用jQuery像這樣

<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,使其在執行此提交之前檢查表單是否有效?

回答

0

原來調用如果($( '形式')。有效的()),它返回true/false,如果表單有效