我正在使用示例MVC4模板来构建向导表单,我从http://afana.me/post/create-wizard-in-aspnet-mvc-3.aspx获取了源代码
当我触发使用'next'按钮的java脚本时,我会收到错误
var validator = $('form')。validate(); //获取验证器 未捕获的TypeError:对象[object Object]没有方法'validate'
下面是完整的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成功地获得客户端验证。 但是在下一个按钮上调用验证失败。
任何有关如何解决此问题的帮助都非常有用
答案 0 :(得分:4)
我能够找出问题所在 MVC4模板在body标签的末尾有一个js引用。
@Scripts.Render("~/bundles/jquery")
@RenderSection("scripts", required: false)
此会覆盖所有其他jquery库,因此找不到方法x。
答案 1 :(得分:0)
更新一年
详细说明, VS 2013使用MVC4添加到_Layout局部视图
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/jqueryval")
因此,底部@Scripts.Render("~/bundles/jquery")
的重新声明会在jqueryval包中禁用有用的方法{。{1}}。
删除它以修复。