我有一个像这样的代码来查看某些单选按钮是否已被选中。当我发现一组具有相同名称值的单选按钮并且没有一个已被检查时,我使用 jquery 的 .each 函数来显示警报。当我找到一个时,我想触发警报并返回 false,但在显示警报后,.each 的执行停止,但执行 .each 函数之后的行(我的意思是执行 true 值)。
$(":radio").each(function(){
var name = $(this).attr('name');
var numAnswered = $(":radio").filter('[name='+name+']').filter(":checked").length;
var notAnswered = numAnswered == 0;
if(notAnswered){
alert("Must answer all questions");
return false;
}
});
console.log('still goes here even when alert is fired');
return true;
如何避免这种情况?
谢谢。
最佳答案
var myreturnvalue = true;
$(":radio").each(function(){
var name = $(this).attr('name');
var numAnswered = $(":radio").filter('[name='+name+']').filter(":checked").length;
var notAnswered = numAnswered == 0;
if(notAnswered){
alert("Must answer all questions");
myreturnvalue = false;
return false;
}
});
console.log('still goes here even when alert is fired');
return myreturnvalue;
关于javascript - 避免在 .each 循环中继续执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4316419/