How to remove all li elements inside an ul except the first and the last elements using jQuery?

前端 未结 5 1456
小鲜肉
小鲜肉 2020-12-23 13:27

I have a

    element. How can remove all the
  • elements inside it, except for the first and the last, using jQuery?

相关标签:
5条回答
  • 2020-12-23 14:07

    To remove from all ul-s on the page the li-s that are neither the first nor the last:

    $('ul li:not(:first-child):not(:last-child)').remove();
    

    Or using a specific id:

    $('#yourul li:not(:first-child):not(:last-child)').remove();
    

    If you have a jQuery object with your ul in it:

    $(yourul).find('li:not(:first-child):not(:last-child)').remove();
    
    0 讨论(0)
  • 2020-12-23 14:19

    Have you tried selecting all the list elements, and then removing the first and last ones from the list?

    $('ul li').not('li:first, li:last').remove()
    
    0 讨论(0)
  • 2020-12-23 14:22

    Here's a way to do it using slice

    $("#removeAllButFirstAndLast").click(function() {
      $("#myUL").children().slice(1, -1).remove()
    })
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <ul id="myUL">
      <li>first</li>
      <li>second</li>
      <li>third</li>
      <li>fourth</li>
    </ul>
    
    <div id="removeAllButFirstAndLast">click to remove all but first and last</div>

    0 讨论(0)
  • 2020-12-23 14:23
    $('ul li').not('li:first, li:last').remove(); 
    

    This will remove all items from list Except/Exclude first and last element,


    To remove all items from any list

    $('#yourulid li').remove();  //remove all li items from list named/id #yourulid
    
    0 讨论(0)
  • 2020-12-23 14:24
    $("ul li:not(:first-child):not(:last-child)").remove();
    
    0 讨论(0)
提交回复
热议问题