我在我的.html
head
中调用了jquery验证我在第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();
};
如果我允许其中任何一个console.logs
,则不会显示任何错误。但是,如果我不在this.init();
之后抛出console.log,则仍会显示错误。
未捕获的TypeError:无法读取未定义的属性“设置” jquery.validate.js:894
我猜测在init()
运行之前完成变量设置需要几毫秒?有没有更好的方法来防止这种错误而不执行console.log()
?并非所有浏览器都支持console.log
,因此我不希望出现错误并导致脚本无法完成执行。