使用jQuery剥离标签?

时间:2009-11-01 17:21:32

标签: jquery tags strip

HTML:

<table>
  <tr>
    <td>
      <a href="#">link</a>
    </td>
  </tr>
</table>

我想:找到'a'中的'link'和除了'table'之外的STRIP ALL父标签。我知道它不是理想的方法,但有时你只是不能修改标记,所以知道一个jquery hack是很好的。

1 个答案:

答案 0 :(得分:5)

var a = $("a:contains('link')");
var table = a.closest('table');
a.insertBefore( table );        // Edit: See comments below
table.contents().remove();
table.append( a );

编辑:调用remove()还将删除可能附加到锚元素的任何事件处理程序。为了解决这个问题,请在移除其内容之前将锚移到桌子外面。