我有这个:
<ul id="pickme">
<li>1</li>
<li>2</li>
<li>3
<ul>
<li>3-1</li>
</ul>
</li>
</ul>
但是想要这个:
<ul id="pickme">
<li>1</li>
<li>2</li>
<li>3</li>
<li class="new_ul">
<ul>
<li>3-1</li>
</ul>
</li>
</ul>
换句话说,我需要插入
</li><li class="new_ul">
在列表中的 3 之后。我玩过 .append 和 .prepend 但无法在正确的位置插入。
任何帮助,将不胜感激
兄弟。安德斯
下面有正确答案。如果你使用它,那么它将只运行一个级别。但同样的例子是能够通过多个层次运行。只需将 ('>li>ul') 更改为 ('ul') 即可找到并处理所有嵌套的 ul。完美的!
(将贯穿无尽的嵌套 ul 级别)
$('#pickme').find('ul').each(function() {
$(this).wrap('<li class="new_ul"></li>').parent().insertAfter($(this).parent().parent());
});
在这种情况下:
<ul id="pickme">
<li>1</li>
<li>2</li>
<li>3
<ul>
<li>3-1
<ul>
<li>3-1-1</li>
</ul>
</li>
</ul>
</li>
</ul>
将会:
<ul id="pickme">
<li>1</li>
<li>2</li>
<li>3</li>
<li class="new_ul"> <<new li
<ul>
<li>3-1</li>
<li class="new_ul"> <<new li
<ul>
<li>3-1-1</li>
</ul>
</li>
</ul>
</li>
</li>
</ul>