如何删除main
除ul
元素之外的所有内容?
<div id="main">
<div id="a">
<div id="b">
<div id="c"></div>
<div id="d"></div>
<div id="e">
<ul></ul>
</div>
</div>
</div>
</div>
如何删除main
除ul
元素之外的所有内容?
<div id="main">
<div id="a">
<div id="b">
<div id="c"></div>
<div id="d"></div>
<div id="e">
<ul></ul>
</div>
</div>
</div>
</div>
假设期望的结果是<div id="main"><ul></ul></div>
并且您想保留所有<ul>
s (或者如果只有一个):
$( '#main' ).html( $( '#main ul' ) );
演示:http: //jsfiddle.net/pEvNt/
这样做$( '#main' ).not( 'ul' ).remove()
是行不通的,因为它会删除 ul 的父母和与他们一起的 ul(请参阅http://jsfiddle.net/h67Ge/)。
尝试:
$('#main').children().not('ul').remove();
可以这样做
$('#main ul').detach().prependTo('#main').siblings().remove();
$("ul", "#main").appendTo($("#main")).siblings().remove();