【问题标题】:How to use continue in jQuery each() loop?如何在 jQuery each() 循环中继续使用?
【发布时间】:2013-06-14 06:45:11
【问题描述】:

在我的应用程序中,我使用 AJAX 调用。我想在这个 jQuery 循环中使用 breakcontinue

$('.submit').filter(':checked').each(function() {

});

【问题讨论】:

标签: jquery for-loop each


【解决方案1】:

通过使回调函数返回false,我们可以在特定迭代中打破$(selector).each() 循环和$.each() 循环。返回 non-falsefor 循环中的 continue 语句相同;它将立即跳到下一次迭代。

return false; // this is equivalent of 'break' for jQuery loop

return;       // this is equivalent of 'continue' for jQuery loop

请注意,$(selector).each()$.each()不同的函数。

参考资料:

【讨论】:

  • 虽然是真的,但这似乎没有记录在案。这是“非官方”功能吗?
  • 这里记录了api.jquery.com/jquery.each@MichaelScheper
  • 当然,这是我看的第一个地方。我现在看到了;它有点迷失在所有的例子中。
【解决方案2】:
$('.submit').filter(':checked').each(function() {
    //This is same as 'continue'
    if(something){
        return true;
    }
    //This is same as 'break'
    if(something){
        return false;
    }
});

【讨论】:

  • 虽然此代码可能会回答问题,但提供有关此代码为何和/或如何回答问题的额外上下文可提高其长期价值。
【解决方案3】:

return 或 return false 与 continue 不同。如果循环在函数内部,则函数的其余部分将不会像您期望的那样执行真正的“继续”。

【讨论】:

    【解决方案4】:

    我们可以在特定的迭代中打破 $.each() 循环,方法是 回调函数返回假。返回非 false 与 a 相同 for 循环中的 continue 语句;它会立即跳到下一个 迭代。 -- jQuery.each() | jQuery API Documentation

    【讨论】:

      猜你喜欢
      • 2020-12-26
      • 2015-08-10
      • 2021-11-13
      • 1970-01-01
      • 1970-01-01
      • 2011-05-12
      • 2021-12-27
      • 2015-05-18
      • 2014-06-16
      相关资源
      最近更新 更多