我有以下输入:
<p>
<span class="highlight">
Some text <b>that can have formatted components too</b>.
</span>
And some more text here of course.
</p>
我想实现以下输出:
<p>
Some text <b>that can have formatted components too</b>.
And some more text here of course.
</p>
我正在使用jquery并且它具有.unwrap()
功能,但是如果我去了
$('.highlight').unwrap()
它会移除<p>
。 :(
手动攻击DOM似乎很麻烦。你知道任何简短的解决方案吗?
答案 0 :(得分:10)
使用.contents()
,您将获得要删除的父元素内的元素。
$(".highlight").contents().unwrap();
答案 1 :(得分:2)
尝试替换为
$('.highlight').replaceWith(function() {
return $(this).html();
});
答案 2 :(得分:0)
你可以通过使用jQuery来实现这一点。
var cnt = $(".highlight").contents();
$(".highlight").replaceWith(cnt);
文档的快速链接:
contents( ):jQuery
replaceWith(内容:[String | Element | jQuery]):jQuery