Jquery:克隆表及其第一行

Jquery:克隆表及其第一行,jquery,clone,Jquery,Clone,我有一个标准的表结构,如下所示: <table id="test"> <th>...</th> <tr><td>one thing</td></tr> <tr><td>another</td></tr> ... ... </table> ... 一件事 另一个 ... ... 我知道如何克隆整个表或表的第n行,但我需要的是整个表

我有一个标准的表结构,如下所示:

<table id="test">
  <th>...</th>
  <tr><td>one thing</td></tr>
  <tr><td>another</td></tr>
  ...
  ...
</table>

...
一件事
另一个
...
...
我知道如何克隆整个表或表的第n行,但我需要的是整个表,除了表的第2、第3、第4等行,换句话说:

<table id="test">
  <th>...</th>
  <tr><td>one thing</td></tr>
</table>

...
一件事
有什么想法吗?

“我知道如何克隆整个表…”

然后这样做,克隆整个表,然后删除不需要的内容

选择除第一个孩子以外的所有东西的技巧是使用
*+*
+选择器”表示右侧与左侧元素相邻的匹配元素

最后,您可以使用:

var $clone = $('#test').clone().find('tr+tr').remove().end();
$clone
将成为仅包含第一行的克隆表。

“我知道如何克隆整个表…”

然后这样做,克隆整个表,然后删除不需要的内容

选择除第一个孩子以外的所有东西的技巧是使用
*+*
+选择器”表示右侧与左侧元素相邻的匹配元素

最后,您可以使用:

var $clone = $('#test').clone().find('tr+tr').remove().end();

$clone
将成为仅包含第一行的克隆表。

另一种解决方案是使用以下选择器:
:not(:first child)
。但是,结合所有这些选择器,您还有很多其他解决方案

var $clone = $("#test").clone();
$clone.find("tr:not(:first-child)").remove();    
$("#target").html($clone);
例如:

$(“#但是”)。单击(函数(){
var$clone=$(“#测试”).clone();
$clone.find(“tr:not(:first child)”).remove();
$(“#目标”).html($clone);
});
td{
边框:1px纯蓝色;
}
#来源{
最小高度:20px;
背景:粉红色;
}
#目标{
最小高度:20px;
背景:黄色;
}

不要删除此项
一件事
另一个

克隆和删除另一个解决方案是使用以下选择器:
:not(:first child)
。但是,结合所有这些选择器,您还有很多其他解决方案

var $clone = $("#test").clone();
$clone.find("tr:not(:first-child)").remove();    
$("#target").html($clone);
例如:

$(“#但是”)。单击(函数(){
var$clone=$(“#测试”).clone();
$clone.find(“tr:not(:first child)”).remove();
$(“#目标”).html($clone);
});
td{
边框:1px纯蓝色;
}
#来源{
最小高度:20px;
背景:粉红色;
}
#目标{
最小高度:20px;
背景:黄色;
}

不要删除此项
一件事
另一个
克隆和删除