我有一个ul
清单。在那,有一些li
s。我想删除所有li
没有孩子的班级noremove
。
这是我的 HTML:
<ul>
<li>Item 1</li>
<li>Item 2
<ul>
<li>Item 2.1</li>
<li>Item 2.2</li>
<li>Item 2.3</li>
</ul>
</li>
<li>Item 3
<ul>
<li class="noremove">Item 3.1</li>
<li>Item 3.2</li>
</ul>
</li>
<li class="noremove">Item 4
<ul>
<li>Item 4.1</li>
<li>Item 4.2</li>
</ul>
</li>
<li>Item 5
<ul>
<li>Item 5.1
<ul>
<li class="noremove">Item 5.1.1</li>
</ul>
</li>
</ul>
</li>
</ul>
脚本运行后,我希望它看起来像这样:
<ul>
<li>Item 3
<ul>
<li class="noremove">Item 3.1</li>
</ul>
</li>
<li class="noremove">Item 4</li>
<li>Item 5
<ul>
<li>Item 5.1
<ul>
<li class="noremove">Item 5.1.1</li>
</ul>
</li>
</ul>
</li>
</ul>
如您所见,第 3 项没有被删除,因为它有一个带有class="noremove"
. 但是,项目 3.2 被删除,因为它既没有class="noremove"
班级也没有任何孩子。
我怎样才能制作一个可以做到这一点的脚本?它需要在列表上递归运行,我想不出该怎么做?