如何删除html标记并用另一个标记包装它

时间:2013-08-14 21:46:13

标签: jquery html

我正在尝试删除表格单元格下的一些元素。

我的HTML就像

<table>
<tr>
  <td>
     <span>first text</span>
     <span>second text</span>
     <span>third text</span>
  </td>
   <td>
     <span>1st text</span>
     <span>2nd text</span>
     <span>3rd text</span>
   </td>
</tr>
…more

我希望我的HTML成为

<table>
<tr>
  <td>
     <span>first text second text third text</span>
  </td>
   <td>
     <span>1st text 2nd text 3rd text</span>
   </td>
</tr>
…more

我试过了。

$('table td span').contents().unwrap().wrap('<span></span>');

但我得到的结果与原来的相同。

反正有没有这样做?非常感谢!

1 个答案:

答案 0 :(得分:5)

需要迭代每个td并使用wrapAll代替wrap

$('table td').each(function() {
    $(this).find('span').contents().unwrap().wrapAll('<span></span>');
})

http://jsfiddle.net/gNMCh/