Jquery将.header附加到thead tr th

时间:2013-03-06 20:12:21

标签: jquery html-table traversal

目前有一个tr.header td,但我需要它在空的thead tr th

$("#new table tr.Header td").each(function(){
  $(this).appendTo("thead tr th");
});

这实际上有效,但我遇到的问题是DOM中存在多个表。我不需要所有标头中的每个标头。我只需要将每个表的tr.header附加到thead tr th。标题1将附加到表1的thead ...等等。

我怎样才能做到这一点?

目前的结果是:

<table>
<thead>
 <tr>
  <th>Header 1 Header 2 Header 3 Header 4</th>
 </tr>
</thead>
<tbody><tr><td>
   Row 1
  </td></tr> 
 <tr><td>
   Row 2
  </td></tr> 
 <tr><td>
   Row 3
  </td></tr>
</tbody> 
</table> 

<table>
<thead>
 <tr>
  <th>Header 1 Header 2 Header 3 Header 4</th>
 </tr>
</thead>
<tbody><tr><td>
   Row 1
  </td></tr> 
 <tr><td>
   Row 2
  </td></tr> 
 <tr><td>
   Row 3
  </td></tr>
</tbody> 
</table> 

<table>
<thead>
 <tr>
  <th>Header 1 Header 2 Header 3 Header 4</th>
 </tr>
</thead>
<tbody><tr><td>
   Row 1
  </td></tr> 
 <tr><td>
   Row 2
  </td></tr> 
 <tr><td>
   Row 3
  </td></tr>
</tbody> 
</table> 

<table>
<thead>
 <tr>
  <th>Header 1 Header 2 Header 3 Header 4</th>
 </tr>
</thead>
<tbody><tr><td>
   Row 1
  </td></tr> 
 <tr><td>
   Row 2
  </td></tr> 
 <tr><td>
   Row 3
  </td></tr>
</tbody> 
</table> 

没有任何jQuery,表格都显示如下:

<table>
<thead>
 <tr>
  <th></th>
 </tr>
</thead>
<tbody><tr class="Header"><td>
   Header 1
  </td></tr>
  <tr><td>
   Row 1
  </td></tr> 
 <tr><td>
   Row 2
  </td></tr> 
 <tr><td>
   Row 3
  </td></tr>
</tbody> 
</table> 

1 个答案:

答案 0 :(得分:3)

我必须说这是人们在这里提出的最不寻常的事情之一,但是你走了:

$("table tr.Header td").each(function(){
  $(this).appendTo($(this).closest('table').find('thead tr th'));
});