我一直试图这样做一段时间,我知道这很容易,但我只是无法弄清楚我做错了什么部分,比如让我们说我们有这个代码,它是在其他地方生成的,它是有问题,需要修理:
<ul>
<li>menu</li>
<div id='languages'>
<ul class="dropdown-menu">
<li>item a</li>
<li>item b</li>
</ul>
</div>
</ul>
显然,我想把内部ul的内容移到外面的ul,然后删除div,这就是我现在正在尝试的,而不是工作:
var el = $('#languages');
el.parent().append(el.find('li'));
el.remove();
我能知道我做错了什么吗?
答案 0 :(得分:5)
喜欢这个吗?
$('#languages ul li').unwrap().unwrap();
<强> Fiddle 强>
这样,内部ul里面的li将成为外部的一部分。展开将自行打开,即第一次展开将取消ul
,第二次将展开div
。
顺便说一句,需要提一下您的源HTML无效,ul
不能将div
作为直接后代。