我正在示例MVC4模板的基础上构建向导表单,我从http://afana.me/post/create-wizard-in-aspnet-mvc-3.aspx
当我触发生成"下一步"按钮的java脚本时,我会得到错误
var验证器=$('form').validate();//获取验证器未捕获的类型错误:对象[Object Object]没有方法"验证"
下面是带有下一个按钮的完整JS部分触发器。
$("#next-step").click(function () {
var $step = $(".wizard-step:visible"); // get current step
var validator = $('form').validate(); // obtain validator
var anyError = false;
$step.find("input").each(function () {
if (!validator.element(this)) { // validate every input element inside this step
anyError = true;
}
});
if (anyError)
return false; // exit if any error found
我已经在mvc4捆绑包中包含了库源代码。我能够使用不引人注目的js成功地获得客户端验证。但调用next按钮上的验证失败。
任何关于如何修复此问题的帮助都将非常有用
我解决了这个问题
MVC4模板在body标记的末尾有一个js引用。
@Scripts.Render("~/bundles/jquery")
@RenderSection("scripts", required: false)
此覆盖其他所有jquery库,因此找不到方法x。
一年后更新
为了详细说明,使用MVC4的VS 2013添加到布局局部视图(_L)
@Scripts.Render("~/bundles/jquery")
后第二次冗余
@Scripts.Render("~/bundles/jqueryval")
已被宣布为
因此,底部@Scripts.Render("~/bundles/jquery")
的重新声明将禁用jqueryval bundle中的.valid()
等有用方法。
将其移除以进行修复。