我有一个具有多个字段的表单。我有jQuery的模糊事件处理程序在所有字段上进行一些验证,当你离开一个领域。问题是,如果你一直专注于一个领域,然后点击页面上的任何其他链接,它将验证该领域,但绝不允许链接被点击(或表单被提交)。Jquery模糊事件干扰所有其他事件
$('.required').bind('blur', function(event) {
validateAll($(event.target));
});
function validateAll(elm) {
//blah blah
return false;
}
validateAll函数只是执行检查并返回false后。
基本上,当用户专注于一个领域时,他们必须点击任何按钮两次才能使其工作。第一个激活模糊验证,然后第二个实际点击链接。
关于发生了什么的任何想法?
我添加了一些代码来显示它是如何返回。我的意思是,不管最后validateAll里面的内容如何,该函数总是返回false。但我同意,我不知道为什么会阻止其他事件处理程序被调用。 – Danny 2011-05-19 01:42:18
我认为你错过了我的观点:它不是关于validateAll返回的内容,而是关于blur事件处理程序返回的内容。 validateAll返回false本身没有任何作用:该函数可以返回false直到奶牛回家,除非你返回它在blur处理程序中返回的内容,否则validateAll return语句将毫无意义。 – machineghost 2011-05-19 17:02:39