使用jQuery返回筛选列表中的下一个列表项

goo*_*oon 2 jquery traversal

我有以下清单

<ul>
  <li id="item1">Item 1</li>
  <li id="item2">Item 2</li>
  <li>Item 3</li>
  <li id="item4">Item 4</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

使用jQuery,我试图遍历其ID以"item"开头的LI列表.

var nextItemWithItemID = $("#item2").next("li[id^='item']);
Run Code Online (Sandbox Code Playgroud)

但是,当我运行此代码时,我最终检索"项目3"而不是"项目4".

如何让jQuery从过滤的LI列表中获取正确的下一个项目?

tva*_*son 6

你想使用nextAll().接下来只是在当前元素之后立即检索兄弟.NextAll()将考虑以下所有兄弟姐妹.

var nextItemWithItemID = $('#item2').nextAll('li[id^=item]:first');
Run Code Online (Sandbox Code Playgroud)