Javascript 如何在JQuery中中断/退出each()函数?
我有一些代码:Javascript 如何在JQuery中中断/退出each()函数?,javascript,jquery,Javascript,Jquery,我有一些代码: $(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 t
$(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.
});
});
是否有可能从每个函数的内部从两个函数中分离出来
2013年3月19日
如果你想继续而不是突然爆发
根据你的判断,你可以简单地返回false;打破:
$(xml).find("strengths").each(function() {
if (iWantToBreak)
return false;
});
从匿名函数返回false:
$(xml).find("strengths").each(function() {
// Code
// To escape from this block based on a condition:
if (something) return false;
});
从以下文件:
从每个
函数完全停止循环
通过所有的元素,这是
就像用一个普通的
环从内部返回“true”
循环跳到下一个迭代
这类似于使用“continue”和
正常循环
参见3天前询问。您可以使用return false
简单的“返回”对我不起作用。这就是我在谷歌上搜索并找到这篇文章的原因返回“假”作品。我正在用chrome运行osx lion。简单返回实际上返回。它将从each及其周围的所有其他控件返回控件,直到退出each的父控件(例如使用each的函数)。这是正确的答案,而另一种方法将不起作用。通过使回调函数返回false,我们可以在特定的迭代中打破$.each循环。返回非false与for循环中的continue语句相同;它将立即跳到下一个迭代。请注意,这不会终止主函数,循环可能会中断,但当您在继续之前使用此jQuery检查所需字段时,无论中断如何,它都将继续。为此,您应该在循环中使用一个var kill变量集,如果kill==1I我不明白您的意思,我的意思是说return false,则从它外部读取返回;在javascript中与PHP中的break相同,并返回true;或返回;与continue@SubodhGhulaxe这是jQuery而不是javascriptso Codler返回false的区别是什么;在javascript中,返回false;在里面jQuery@SubodhGhulaxejavascript中的return false表示返回与PHP中相同的布尔类型。但是在jquery.each中,jquery会将其解释为停止循环。直接指向文档:,而不是重复。这个链接的问题是关于美元的,但是这个是关于美元的。每个问题都是两个不同的东西。这是谷歌搜索的第二个链接。
$(xml).find("strengths").each(function() {
// Code
// To escape from this block based on a condition:
if (something) return false;
});
if (condition){ // where condition evaluates to true
return false
}
+----------------------------------------+
| JavaScript | PHP |
+-------------------------+--------------+
| | |
| return false; | break; |
| | |
| return true; or return; | continue; |
+-------------------------+--------------+