我知道您应该可以通过返回来打破每个语句,这是我要尝试执行的操作,但是我必须做错了某些事情,而且看起来很简单,我找不到它。
我有这样的代码
function create() {
var test = hasThing();
if (test) {
$('#myForm').submit();
} else {
alert('you suck!')
}
}
function hasThing() {
$('.selects').each(function() {
if (this.value != "") {
return true;
}
});
return false;
}
我在“返回真”上设置了断点;并点击它,但是var test总是错误的,因为由于某些原因,.each()循环继续并且hasThing()函数继续。我尝试过进行切换,以便在.each()中返回false,以防万一出于某种重要原因,但它没有任何改变。
我不明白 似乎与文档所说的应该如何工作背道而驰。
您的return true;
陈述式从赋予的匿名函数传回each
。该return false;
行始终执行,这说明了为什么var test
总是错误。
将您的代码更改为
function hasThing() {
var hasThing = false;
$('.selects').each(function() {
if (this.value != "") {
hasThing = true;
return false; // breaks the $.each, but does not return from hasThing()
}
});
return hasThing;
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句