更新按钮上的JQuery验证器插件问题单击ASP.NET MVC页面

时间:2010-02-11 22:57:54

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

我在ASP.NET MVC页面上使用JQuery验证器插件,如下所示。

1)。点击更新按钮,验证消息显示正常。 2)。邮政编码最小长度为5,最大值为9,是必填字段,只有数字。

问题是即使我们输入的数字超过9位,它也会显示validatin消息,但会将其更新到数据库中。如果它未通过任何验证规则,则不应将其更新到数据库。

在验证规则中是否有任何遗漏,例如'return true / false'。

//Validate form on btnUpdateProfile button click

$("#frmCustDetails").validate({
    rules: {
        "AddressDetail.ZipCode": {
            required: true,
            digits: true,
            minlength: 5, 
            maxlength: 9
            }
        },
    messages: {
        "AddressDetail.ZipCode": {
            required: "please enter zipcode",
            digits: "please enter only digits",
            minlength: "Min is 5", 
            maxlength: "Max is 9"
        }
    }
});

<table>
  <tr>
    <td class="Form_Label"><label for="Zip">Zip</label><em>*</em></td>
    <td CssClass="Form_Value"><%= Html.TextBox("AddressDetail.ZipCode", Model.AddressDetail.FirstOrDefault().ZipCode, new { @class = "required zip", minlength = "5"})%>
    </td>
  </tr>

  <tr>
    <td colspan="2" align="center"><input type="submit" id="btnUpdProfile" value="Update" /></td>
  </tr>
</table>

2 个答案:

答案 0 :(得分:3)

提交是通过AJAX处理的吗?如果是这样,您可能希望使用submitHandler选项作为验证插件,并从那里进行提交而不是单独应用的处理程序。如果使用单独应用的处理程序,您可能希望在提交之前检查表单是否有效(使用valid()方法)。

答案 1 :(得分:0)

我建议您考虑Xval从模型中生成所有这些逻辑,而不会中断DRY; )

包括Jquery支持嗯? :D

Uber comparison:D