我有一个表,我有一个jQuery对象,代表表中的一个TD。
我希望能够遍历表中的所有行,从jQuery'd 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>
假设我有一个jQuery对象,表示带有H的td:
var theTD = $(...the H cell...);
在这种情况下,我想循环最后3行。
所以有一个很好的succint jQuery给我相当于:
theTD.nextRow_to_lastRow.each(...
答案 0 :(得分: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
答案 1 :(得分: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>
答案 2 :(得分:0)
var all_td_in_a_table = $("#table-id td")
然后用for或foreach循环遍历它并搜索h / div / text或你想要的内容
答案 3 :(得分:0)
然而,你的情况非常复杂,我完全无法理解;希望这有助于: 使用
var rows = $("#tableid tr td");
你将拥有所有细胞。现在,您可以遍历每个并检查值或文本。在jquery中的foreach:
$(rows).each(function( index ) {
console.log( index + ": " + $(this).text() );
});
答案 4 :(得分: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]);
}
}
答案 5 :(得分:0)
在伊兰的帮助下,我最终到了那里:
theTD.parent().find("~ tr").each(
其他回复将完成这项工作,但上面是我正在寻找的