0

我有一个动态构建的表,我想要的是,当我单击时,执行一个函数,该函数为我提供每行最后一列的 id,我使用以下代码提醒每一列的 id,但它不工作。谁能帮我 ????这是函数中使用的循环

$('table[id="' + tableID + '"]').find('tr').each(function () {
        alert($('td:last-child').attr("id"));

    });

我在警报中得到的是循环每次迭代中第一行最后一列的 id

4

4 回答 4

0

尝试这个

$('table[id="' + tableID + '"] tr').each(function () {
    alert($('td:last-child').attr("id"));
});
于 2012-04-15T15:26:43.197 回答
0

您需要为选择器指定上下文,以便查找函数<td>正在查看的当前行中的最后一个.each(),因此将其更改为:

alert($('td:last-child', this).attr("id"));
于 2012-04-15T15:26:51.667 回答
0

这将创建一个包含所有最后一个 TD 的组

$('#mytable tr td:last-child').each(function () {
    alert(this.id);
});

http://jsfiddle.net/JgtV4/

只要您只想这样做,而不是对每个 TR 执行更多操作

于 2012-04-15T15:32:39.547 回答
0

另一种选择可能是:

$('table#'+ tableID +' tr').each(function () {
    var lastCellOfCurrentRowId = $(this).find('td:last-child').attr("id");
});

重要的是每个迭代器中的 $(this) 。它指的是迭代中的当前元素,例如表中的每个行元素(TR)。从那个元素你可以做任何你需要的事情,在这种情况下,只需找到最后一个单元格 ID。

于 2012-04-15T15:33:57.473 回答