異なるクラスの一連の行があります。
<tr class="head">...
<tr class="group">...
<tr class="item">...
<tr class="item">...
<tr class="item">...
<tr class="group">...
<tr class="item">...
<tr class="item">...
<tr class="item">...
<tr class="group">...
<tr class="item">...
<tr class="item">...
<tr class="item">...
コンテキストがアイテムの1つにあると仮定すると、グループを越えずに、アイテムであるアイテムの前後のすべての行を選択するにはどうすればよいですか?
この例では、現在のアイテム行に関係なく、常に3つのアイテム行のコレクションになるはずです。
現在私はこれを持っています、そしてそれが機能している間、私はよりクリーンな方法があることを望んでいます。
var $itemRows = $targetRow.prevUntil('tr.group').add($targetRow.nextUntil('tr.group')).add($targetRow);
似たような.siblings('tr.item')
ものですが、3つの隣接するアイテムではなく、9つのアイテムすべてを取得します。そして、これはすでにtbodyにあり、それらをネストすることは無効なhtmlであるため、これらをtbodiesに入れることはできません。
私はそれを改善しました
var $itemRows = $targetRow.prevAll('tr.group:first').nextUntil('tr.group');