Jquery验证'验证'未定义的错误

时间:2015-08-27 22:43:41

标签: jquery validation

我有一个MVC页面,我正在尝试添加验证,但我不断收到以下错误:

未处理的异常

0x800a01b6 - JavaScript运行时错误:对象不支持属性或方法'validate'

任何想法为什么?

我的代码如下。

<script src="~/Scripts/jquery-1.10.2.js"></script>
<script src="~/Scripts/jquery.validate.js"></script>
<script src="~/Scripts/jquery.validate.unobtrusive.js"></script>
<script>
    $(document).ready(function () {

        $("#contact").validate({
            rules: {
                "name-contact": {
                    required: true
                }
            },
            messages: {
                "name-contact": {
                    required: "Please, enter a name"
                }
            },
            submitHandler: function (form) { // for demo
                alert('valid form submitted'); // for demo
                return false; // for demo
            }
        });

    });
</script>


<form id="contact" method="post" action="#">
    <fieldset>
        <label for="name-contact">NAME</label>
        <input type="text" class="required input-xlarge" id="name-contact"
               name="name-contact" value="" placeholder="" minlength="2" />
        <input type="submit" />
    </fieldset>
</form>

2 个答案:

答案 0 :(得分:0)

您很有可能实际上没有导入.flex { display: flex; } 。你确定它没有被称为jquery.validate.js吗?你确定你有正确的路径吗?

答案 1 :(得分:0)

我发现了这个问题。我在_layout页面上包含了jquery包,其中包括以下内容:

bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
                        "~/Scripts/jquery-{version}.js"));

一旦我删除了验证工作正常。我不确定为什么会导致问题,但删除它会使验证工作。