asp.net mvc 中未定义验证器

validator is undefined in asp.net mvc

我有一个包含两个单选按钮的 bootstrap 模式:第一个包含表单,第二个包含 kendo 网格。我必须选择从表单创建一个新对象或从网格创建一个现有对象 select 为了能够 select 网格中的现有对象,我禁用了如下形式的验证:

<div >
                    @Html.LabelFor(model => model.xxxxx)
                    <div >
                        @{ Html.EnableClientValidation(false); }
                        @Html.EditorFor(model => model.xxxx, new { htmlAttributes = new { @class = "form-control" } })
                        @{ Html.EnableClientValidation(true); }
                    </div>
                </div>

然后为了在从表单创建新对象时进行验证,我使用函数来测试表单属性是否为空,如下所示:

if (xxx== '') {
            alert("  le champ xxx est obligatoire");
            return false;
        }

一切正常,我正确地获取了我的对象,但是当我打开我的 firefox 控制台时,出现如下错误消息:

类型错误:验证器未定义 设置 = validator.settings;

我不知道这个错误的原因是什么!!
请帮助我。

我无法从你的问题中判断出来,但是有问题的模态加载的是局部视图吗?如果是这样,您可能需要在部分视图页面的顶部添加脚本声明,即使它们包含在父页面中。

当我的验证元素不是 <form> 时,我遇到了这个错误。看起来 jQuery Validate 需要像 $('form').validate() 或更精确的选择器一样调用,但只识别 <form>.