2010-10-06 67 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