我在我.html
head
的第 1 页上有一个表单,在第 2 页上再次有相同的表单。但是,如果我从第 1 页开始,则转到第 2 页。当字段尝试验证时,我收到设置错误,并且反之亦然,从第 2 页到第 1 页。经过研究,问题似乎源于
// constructor for validator
$.validator = function( options, form ) {
// console.log('validator construct');
this.settings = $.extend( true, {}, $.validator.defaults, options );
// console.log(this.settings);
this.currentForm = form;
this.init();
};
如果我允许其中任何一个 2 console.logs
,则不会显示错误。但是,如果我不这样做并在之后抛出一个 console.log,this.init();
那么错误仍然会显示。
未捕获的类型错误:无法读取未定义 jquery.validate.js:894 的属性“设置”
我猜它需要几毫秒才能在init()
运行之前完成设置变量?有没有更好的方法来防止这种错误而不做console.log()
?并非所有浏览器都支持console.log
,所以我不希望出现错误并导致脚本无法完成执行。
- jQuery 1.8.2
- jQuery 验证 1.11.0pre
- jQuery 移动 1.2