Jquery第一个表,最后一行选择

时间:2013-02-25 19:20:22

标签: jquery

我遇到了tr:last选择器的问题。

我有一张基本表:

<table id="myTable">
 <tr>
   <td>1</td>
   <td></td>
 </tr>
</table>

当用户点击某个链接时,它会使用以下内容向我的表中添加一个addtional行:

$("a#more").live("click", function(){

  $table = $('#myTable');
  var a = $table.find('tr:last').clone(true);
  $table.find('tr:last').after(a);  

});

这就像魅力一样。但是,当我决定在我的表的最后td中添加一个附加表时,问题就出现了:

<table id="myTable">
 <tr>
  <td> 1 </td>
  <td>
    <table id="myTable2">
    <tr><td> Additional Information </td></tr>
    </table>
  </td>
</tr>
</table>

这次我使用clone时,它会选择第二个表的最后一行并将新行复制到第二个表中。我的目标是仅复制第一个表的整个最后一行,并创建一个包含其中所有内容的新tr(包括第二个表的副本)。

我不知道该怎么做。

1 个答案:

答案 0 :(得分:5)

而不是

var a = $table.find('tr:last').clone(true);

使用.children()将其限制为原始表:

var a = $table.children('tbody').children('tr:last').clone(true);