我正在使用Ajax.BeginForm和xVal提交表单以强制执行验证
即使表单上有错误,ajax post请求也会出现问题。我知道客户端验证是有效的,因为它显示了正确的错误消息,但为什么它认为发出ajax请求是可以的,这是我不明白的。
我甚至尝试将causesvalidation = true放在submit选项卡中,但表单仍在提交中。
<% 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> 发布于 2010-10-06 17:20:49
尝试将$("#yourFormId").validate()设置为OnBegin参数
例如:
<%
using (Ajax.BeginForm("SuggestTemp", "yourControllerName", new{}, new AjaxOptions
{
HttpMethod = "POST",
OnBegin = "function(){$('#myForm').validate();}"
},
new { id = "myForm" }){ %>https://stackoverflow.com/questions/3868931
复制相似问题