Jquery克隆具有特定行类的表

时间:2012-01-29 23:03:57

标签: javascript jquery

嘿我如何克服名为teamselectiontable的表只包含具有“selected”类的表行,并修改另一个表并用找到的表行替换其内容。但是在附表中保留“行”的类名。

<table id="teamselectiontable">
  <tr class="chosen">content</tr>
  <tr class="something">content</tr>
  <tr class="something">content</tr>
  <tr class="something">content</tr>
  <tr class="something">content</tr>
  <tr class="chosen">content</tr>
  <tr class="chosen">content</tr>
</table>

到下面这样的表格。

<table id="talentselection">
  <tr class="row"></tr>
  <tr class="row"></tr>
  <tr class="row"></tr>
</table>

感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

$(".chosen").clone().attr("class","row").appendTo("#talentselection")

或者如果要替换目标表的全部内容

$("#talentselection").html($(".chosen").clone().attr("class","row"));

请注意,您需要在表格标记中使用tds才能使其正常工作

<tr><td class="chosen">content</td></tr>

答案 1 :(得分:0)

假设我已经理解了您要做的事情,您可以使用clone方法克隆选定的元素,并使用appendTo方法将克隆附加到另一个元素中:

$("#teamselectiontable .chosen").clone().appendTo("#talentselection");

原始选择中的元素不受影响。请注意,在其当前形式中,上述代码不会克隆绑定到匹配元素的任何事件。如果您想要使用其事件克隆元素,只需将true传递到clone方法。

更新(见评论)

要更改克隆元素的类名,您可以使用removeClassaddClass方法:

$("#teamselectiontable .chosen")
    .clone()
    .appendTo("#talentselection")
    .removeClass("chosen")
    .addClass("row");