J'ai un <ul>
élément. Comment supprimer tous les <li>
éléments à l'intérieur, à l'exception du premier et du dernier, à l'aide de jQuery?
Pour supprimer de tous les ul-s de la page les li-s qui ne sont ni les premiers ni les derniers:
$('ul li:not(:first-child):not(:last-child)').remove();
Ou en utilisant un identifiant spécifique:
$('#yourul li:not(:first-child):not(:last-child)').remove();
Si vous avez un objet jQuery avec votre ul dedans:
$(yourul).find('li:not(:first-child):not(:last-child)').remove();
Avez-vous essayé de sélectionner tous les éléments de la liste, puis de supprimer les premier et dernier de la liste?
$('ul li').not('li:first, li:last').remove()
$('ul li').not('li:first, li:last').remove();
Cela supprimera tous les éléments de la liste Except/Exclude premier et dernier élément,
Pour supprimer tous les éléments d'une liste
$('#yourulid li').remove(); //remove all li items from list named/id #yourulid
$("ul li:not(:first-child):not(:last-child)").remove();
Voici une façon de le faire en utilisant 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>