假设我有下表:
<table>
<tr>
<td id="1">1</td>
<td id="2">2</td>
<td id="3">3</td>
</tr>
<tr>
<td id="4">4</td>
<td id="5">5</td>
<td id="6">6</td>
</tr>
</table>
我需要能够选择范围。每个表格单元格都有唯一的 ID。所以我用
$("#"+first).nextUntil("#"+last)
,其中 first 和 last 只是一些任意 ID。
如果选定的单元格位于同一行,则它完全可以工作。当它们位于不同的两行时,就会出现问题。它的作用 - 它从“第一”行中选择所有单元格,仅此而已。
不向前移动超过"</tr><tr>"
点,如果我理解正确的话。
我试过使用:
$("#"+first).nextUntil("#"+last).filter('tr')
但运气不好。有没有办法继续前进?有什么解决办法吗?
最佳答案
是的,nextUntil只遍历sibling
像这样的东西应该可以工作:
$('table td').filter(function(){
return parseInt(this.id) => first && parseInt(this.id) <= last;
});
或者直接使用tds的索引。这样您就不需要 ID:
$('table td').filter(function(index){
return index => first && index <= last;
});
关于javascript - jQuery nextUntil 表遍历选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17318744/