删除父元素,但在HTML中使用jquery保留子元素
从下面的HTML我想删除div和H2标签,但使用jquery保留UL标签。
请告诉我如何实现这一目标
谢谢
你可以使用replaceWith()
$('.row').replaceWith(function() { return $('ul', this); });
工作演示
当我只是试图删除一个父元素(同时仍然保留孩子们)时,我偶然发现了这个页面 – 以防万一它对其他人有用,我发现unwrap
是我所需要的。 对我来说,这是一个简单的find-an-element-and -wwrap:
$('.target-child').unwrap();
然而,在这种情况下增加h2去除会使事情变得更加复杂:
$('.row h2').siblings('ul').unwrap().end().remove();
以上应该更加优化,因为它不依赖于使用匿名函数创建和调用。
你可以使用jQuery detach()
函数吗?
这将删除元素(可视)但将其代码保存在变量中,然后您可以将其附加到另一个父元素中。