如何在ASP.net MVC2中使用MicrosoftMvcValidation和jQuery.Ajax?

时间:2010-08-26 18:45:20

标签: asp.net-mvc-2 jquery

  

使用asp.net mvc2,Data Annotations,   MicrosoftAjax.js,MicrosoftMvcValidation.js,   jquery for ajax

我有联系表单,我正在使用ContactFormModel的数据注释 我将此行<% Html.EnableClientValidation(); %>添加到表单顶部。

当我点击提交按钮时,客户端验证工作正常。现在我改变了主意,想用jQuery.Ajax发布表单。

这次我想完成这个。

  1. 点击提交按钮。
  2. MicrosoftMVCValidation执行客户端验证并在客户端上呈现错误。
  3. 如果模型有效,我的意思是如果验证通过,我希望我的jQuery ajax参与其中。
  4. 但是当我点击提交按钮时,ajax post和mvc客户端验证都有效。 我怎样才能得到正确的顺序。

    1.Mvc客户验证
    2.然后是jQuery.Ajax Post。

1 个答案:

答案 0 :(得分:1)

            var myForm = $("#MainForm");
            var formContext = myForm[0]['__MVC_FormValidation'];
            var errors;
            if (formContext) {
                // validate the form
                errors = formContext.validate("submit");
            }
            if (!formContext || errors.length == 0) {
                // no errors so submit to server
                ...
            }