2010-10-06 62 views
2

我使用Ajax.BeginForm提交表單ANS XVAL執行驗證ajax.beginform和XVAL

問題正在取得的AJAX請求後,即使表格上有錯誤。我知道客戶端驗證正在工作,因爲它正在顯示正確的錯誤消息,什麼不是,但爲什麼它認爲無論如何,使ajax請求無論如何是我不明白的。

我甚至試着把causesvalidation = true放在提交標籤裏面,但表單仍在提交。

<% using (Ajax.BeginForm("SuggestTemp", new AjaxOptions { InsertionMode = InsertionMode.Replace, UpdateTargetId = "Result" })) 
     {%> 

     <table> 
     <tr> 
     <td style="text-align:right"> 
      Title 
     </td> 
     <td> 
      <%= Html.TextBox("Upload.Title")%> 
      <%= Html.V 
alidationMessage("Upload.Title")%> 
     </td> 
     </tr> <tr><td><%=Html.ClientSideValidation<Upload>("Upload") %></td><td></td></tr> 
     <tr><td></td><td><input type = "submit" causesvalidation = "true" value = "Suggest " class = "btn"/></td></tr> 
     </table> 
     <div id = "Result"><%=ViewData["SuggestStatus"]%></div> 

回答

0

嘗試把$("#yourFormId").validate()OnBegin參數

例:

<% 
using (Ajax.BeginForm("SuggestTemp", "yourControllerName", new{}, new AjaxOptions 
{ 
    HttpMethod = "POST", 
    OnBegin = "function(){$('#myForm').validate();}" 
}, 
new { id = "myForm" }){ %> 
+0

這不是100%正確,但它讓我在正確的方向思考。 – TPR 2010-10-10 17:36:02