如何循环遍历特定的表格行

4
我有一个表格和一个代表表格中一个TD的jQuery对象。
我想要循环遍历表格中从我的jQuery的TD所在行的下一行开始到末尾的所有行。
所以如果我的表格像这样:
<table>
  <tr><td>A</td><td>B</td><td>C</td></tr>
  <tr><td>D</td><td>E</td><td>F</td></tr>
  <tr><td>G</td><td>H</td><td>I</td></tr>
  <tr><td>J</td><td>K</td><td>L</td></tr>
  <tr><td>M</td><td>N</td><td>O</td></tr>
  <tr><td>P</td><td>Q</td><td>R</td></tr>
</table>

假设我有一个代表带有 H 的 td 的 jQuery 对象:
var theTD = $(...the H cell...);

在这种情况下,我想循环遍历最后3行。
那么有没有一个简洁的jQuery代码片段可以让我实现相同的功能呢?
theTD.nextRow_to_lastRow.each(...

1
请参考http://api.jquery.com/next-siblings-selector/。 - ilan berci
看起来是一个可行的解决方案,我该如何使用它?你提供的链接似乎在谈论prev siblings,尽管标题是next siblings,而且它没有使用现有的jQuery对象。我该如何将其与我的theTD变量一起使用? - Graham
好的,最终找到了解决方法:theTD.parent().find("~ tr").each(...) - Graham
6个回答

1
像这样的吗?
var td = $('td:contains("H")');

var tr = $('tr').length;
for(i= td.parent().index()+1; i < tr;i++){
   $.each($('tr:eq('+i+') td'),function(){
      console.log($(this).text());
   });
}

在控制台中检查demo


到目前为止,这是最接近的答案。我从“each”行中删除了td以获得我想要的结果,但我也不想从开头遍历所有行。 - Graham

1
我认为您想要这样的东西:

我认为您想要这样的东西:

$('td').filter(function() {
  return $(this).text() == 'H';
}).parent().nextAll().each(function() {
  console.log(this);
});

这将给您行:

<tr><td>J</td><td>K</td><td>L</td></tr>
<tr><td>M</td><td>N</td><td>O</td></tr>
<tr><td>P</td><td>Q</td><td>R</td></tr>

0

你的情况相当复杂,我无法完全理解,但希望这能有所帮助:

使用

 var rows = $("#tableid tr td"); 

你将拥有所有的单元格。现在你可以遍历每一个并检查它的值或文本。使用jQuery的foreach:

 $(rows).each(function( index ) {
    console.log( index + ": " + $(this).text() );
 });

0

你还可以使用一个 for 循环,只针对最后三行进行操作:

var table = document.getElementById('table'),
    row = table.querySelectorAll('tr');

for(i = 0; i < row.length; i++) {
    if (i >= 3) {
        console.log(row[i]);
    }
}

JSFIDDLE

{{链接1:JSFIDDLE}}


最后三行只适用于我的示例,而不适用于我的问题。 - Graham

0
var all_td_in_a_table = $("#table-id td")

然后使用for或foreach循环遍历它,并搜索h/div/text或您想要的内容


可以工作,但我不想遍历所有行,而且表格没有ID。 - Graham

0

在 ilan 的帮助下,我最终到达了那里:

theTD.parent().find("~ tr").each(

其他的回复也可以胜任,但上面的是我在寻找的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接