我有一些代码:
$(xml).find("strengths").each(function() { //Code //How can i escape from this block based on a condition. });
如何根据条件从"每个"代码块中逃脱?
如果我们有这样的事情怎么办:
$(xml).find("strengths").each(function() { $(this).each(function() { //I want to break out from both each loops at the same time. }); });
是否有可能从内部"每个"功能中突破"每个"功能?
#19.03.2013
如果你想继续而不是爆发
return true;
Greg.. 1002
根据文档,你可以简单return false;
地打破:
$(xml).find("strengths").each(function() { if (iWantToBreak) return false; });
"我们可以通过使回调函数返回false来在特定迭代中中断$ .each()循环.返回非false与for循环中的continue语句相同;它将立即跳到下一次迭代." (27认同)
简单的"回归"对我不起作用.这就是为什么我用Google搜索并发现这篇文章.'return false'有效.我正在运行osx lion with chrome. (12认同)
请注意,这不会杀死主函数,循环可能会中断,但是当您使用此jQuery每个都在继续之前检查所需的字段时,无论中断如何都会继续.为此你应该在循环中使用var kill变量集,如果kill == 1则在它之外读取以返回 (7认同)
Subodh Ghula.. 116
您可以使用 return false;
+----------------------------------------+ | JavaScript | PHP | +-------------------------+--------------+ | | | | return false; | break; | | | | | return true; or return; | continue; | +-------------------------+--------------+
@SubodhGhulaxe在javascript中返回false`意味着在PHP中返回布尔类型相同.但是在`jquery.each()`中,它将被jQuery解释为停止循环. (6认同)
我的意思是说回归虚假; 在javascript中与PHP中的break相同并返回true; 或返回; 与继续相同 (4认同)
@SubodhGhulaxe它是jQuery而不是javascript (2认同)
Guffa.. 106
从匿名函数返回false:
$(xml).find("strengths").each(function() { // Code // To escape from this block based on a condition: if (something) return false; });
从每种方法的文档:
从每个函数中返回'false'会完全停止循环遍历所有元素(这就像使用带有正常循环的'break').从循环内返回'true'会跳到下一次迭代(这就像使用带有正常循环的'continue').
adardesign.. 24
if (condition){ // where condition evaluates to true return false }
3天前看到类似的问题.
根据文档,你可以简单return false;
地打破:
$(xml).find("strengths").each(function() { if (iWantToBreak) return false; });
您可以使用 return false;
+----------------------------------------+ | JavaScript | PHP | +-------------------------+--------------+ | | | | return false; | break; | | | | | return true; or return; | continue; | +-------------------------+--------------+
从匿名函数返回false:
$(xml).find("strengths").each(function() { // Code // To escape from this block based on a condition: if (something) return false; });
从每种方法的文档:
从每个函数中返回'false'会完全停止循环遍历所有元素(这就像使用带有正常循环的'break').从循环内返回'true'会跳到下一次迭代(这就像使用带有正常循环的'continue').
if (condition){ // where condition evaluates to true return false }
3天前看到类似的问题.