asp.net-mvc - MVC 2 jQuery 验证和 ajax 表单

标签 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>

最佳答案

您可以在按钮单击事件上启动 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了解更多信息。

关于asp.net-mvc - MVC 2 jQuery 验证和 ajax 表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4372900/

相关文章:

javascript - 根据 <SELECT> 值显示/隐藏 <DIV>

c# - MVC 仅作为表示层

c# - 下拉式级联 MVC 2

c# - 在使用 silverlight 时,有没有办法使用按钮来更改网页?

asp.net-mvc-2 - Silverlight 4.0 + MVC 2.0 + WCF RIA 服务 + EF 4.0 = 加载错误

javascript - 对齐显示为分数的表单域

javascript - 让输入过滤所有列

asp.net-mvc - ScriptBundle ("~/scripts/jquery-{version}.js"中的 {version} 是什么)

asp.net-mvc - 为什么我的空 MVC 2 项目中有这么多 javascript 文件?

php - 如何使用带有背景的 div 集创建 jpeg - PHP/jQuery