MVC 2 jQuery验证& ajax形式

时间:2010-12-07 02:36:06

标签: asp.net-mvc asp.net-mvc-2 jquery jquery-validate

我想使用jQuery($ .post)提交我的html表单,但我想使用MVC 2的客户端验证功能。目前我将post函数连接到表单标签的“OnSubmit”事件,但我无法挂钩验证,理想情况下我希望能够做到

if (formIsValid) {
     $.post('<%=Url.Action("{some action}")%>'...
}

请注意,客户端验证正在使用jQuery.validation,在发布数据之前,我无法测试验证是否成功。

安德鲁

最终解决方案

<%
    Html.EnableClientValidation();
    using (Html.BeginForm("Register", "Account", FormMethod.Post, new { id = "registrationForm" })) {
%>
...
<button type="submit" onclick="return submitRegistration();">Register</button>
<%
    }
%>



<script type="text/javascript">
  function submitRegistration() {
    if ($("#registrationForm").valid()) {
      $.post('<%=Url.Action("{some action}")'...
    }
    // this is required to prevent the form from submitting
    return false;
  }
</script>

1 个答案:

答案 0 :(得分:2)

您可以在按钮单击事件上启动jQuery验证。将以下内容放在按钮单击事件处理程序中:

if ($('form').valid())
   //take appropriate action for a valid form. e.g:
   $('form').post('<%=Url.Action("{some action}")%>')
else
   //take appropriate action for an invalid form

有关详细信息,请参阅验证插件documentation