动态表单字段验证启用/禁用

时间:2015-03-02 19:13:12

标签: jquery asp.net-mvc-4 html-form unobtrusive-validation

在MVC4表单中动态启用/禁用对特定字段的不显眼验证(基于另一个字段的值)需要什么?

这个用例是我有一个联系表格,只需要一个邮政编码或者需要城市+州,但不是所有三个字段。

所以我想知道在没有到达服务器的情况下启用和禁用验证的过程是什么。我的服务器端逻辑有问题,但是由于某种原因我无法解决客户端问题。

目前的尝试......

var removeValidation = function(field) {
            var id = (field.attr("id") ? field.attr("id") : field.attr("name"));
            $("form").validate({
                id: {
                    required: false
                }
            });
            field.parent("div").removeClass("has-error");
        };

        var addValidation = function(field) {
            var id = (field.attr("id") ? field.attr("id") : field.attr("name"));
            $("form").validate({
                id: {
                    required: true
                }
            });
        };

1 个答案:

答案 0 :(得分:0)

在您的视图中添加此

<script src="~/Scripts/jquery-1.8.2.min.js"></script>
<script src="~/Scripts/jquery.validate.js"></script>
<script src="~/Scripts/jquery.validate.unobtrusive.js"></script>
<script src="~/Scripts/jquery.steps.min.js"></script>

我遇到了同样的问题,在我的情况下,我使用的是不显眼的min文件,我将其更改为unobtrusive.js并且它有效 我希望它有所帮助。