0

我试图在 JQuery 中的几个元素上运行一个循环。在任何人说之前,我不需要.each(). 我试图将元素作为真正的循环运行——一旦成功的迭代运行,循环将中断并阻止对其他元素执行相同的操作。我简要查看了带有.getElement...方法的直接 JavaScript 版本,但据我了解,这不能满足我的其他要求 - 要迭代的元素列表是通过部分字符串 JQuery 标识符创建的:

rows = $('tr[id^="am_assetRow_' + parentAsset.replace(/ /, "_") + '_' + type + '"]');

有谁知道可以帮助我完成这项工作的任何事情?

编辑: 关于应用程序的更多信息:我正在检查是否可以将值插入到表的现有行中,如果不能,则创建一个新行并将其插入那里。因此,如果找到合适的拟合,我需要退出循环,并且在循环终止后,我需要知道它是成功终止(放置值)还是失败(没有可用位置 - 创建新行的时间)。

4

2 回答 2

5

在 jquery 中,如果您希望$.each()循环立即结束,只需return false从函数调用即可。

于 2013-08-08T16:18:24.540 回答
1

做一个正常的循环而不使用each()但仍然使用jquery来选择基于部分字符串等的项目......

rows = $('tr[id^="am_assetRow_' + parentAsset.replace(/ /, "_") + '_' + type + '"]');
for (var i = 0; i < rows.length; ++i) {
  rows[i];    // The raw element at this index.
  $(rows[i]); // jquery collection for this one element.
  if (someCondition) {
    break; // Break the loop early.
  }
}
于 2013-08-08T16:25:48.057 回答