使用jQuery剥离标签?

3zz*_*zzy -1 tags jquery strip

HTML:

<table>
  <tr>
    <td>
      <a href="#">link</a>
    </td>
  </tr>
</table>
Run Code Online (Sandbox Code Playgroud)

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

Tin*_*ter 5

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

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