使用jQuery按类别拆分列表

时间:2019-06-15 00:13:53

标签: jquery list class split

我有一个无序列表,其中一些项目具有类似的类:

<ul>
    <li class="specialOne">Some Content</li>
    <li>Some Content</li>
    <li>Some Content</li>
    <li>Some Content</li>
    <li class="specialTwo">Some Content</li>
    <li class="specialThree">Some Content</li>
    <li>Some Content</li>
</ul>

我的目标是将其拆分为两个不同的无序列表,其中一个包含不带类的列表项,另一个收集具有类的列表项,如下所示:

   <ul>
       <li>Some Content</li>
       <li>Some Content</li>
       <li>Some Content</li>
       <li>Some Content</li>
   </ul>
   <ul>
       <li class="specialOne">Some Content</li>
       <li class="specialTwo">Some Content</li>
       <li class="specialThree">Some Content</li>
   </ul>

我尝试过this,但是它按相似的类将列表分组,并且我希望所有类都合并在一起。

有没有简单的代码可以做到这一点?我不知所措,想要一些线索!

谢谢

1 个答案:

答案 0 :(得分:1)

这可以按照您的要求进行操作,匹配具有li class

的任何attr

演示

// Create new list and append to end of body
$("body").append("<ul class='class-list'></ul>");

// Append all list items that have the class attribute
$("ul.class-list").append( $("li[class]") );
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<body>
<ul>
    <li class="specialOne">Some Content + class</li>
    <li>Some Content</li>
    <li>Some Content</li>
    <li>Some Content</li>
    <li class="specialTwo">Some Content + class</li>
    <li class="specialThree">Some Content + class</li>
    <li>Some Content</li>
</ul>
</body>