¿Cuál es la forma más sencilla de solicitar un <UL>/<OL> en jQuery?

Resuelto Eric Schoonover asked hace 16 años • 3 respuestas

Estoy buscando un código de muestra que ordene los elementos de la lista en una lista HTML por orden alfabético. ¿Alguien puede ayudar?

Aquí hay una lista de muestra con la que las personas pueden trabajar:

<ul class="alphaList">
    <li>apples</li>
    <li>cats</li>
    <li>bears</li>
</ul>
Eric Schoonover avatar Nov 20 '08 12:11 Eric Schoonover
Aceptado
var items = $('.alphaList > li').get();
items.sort(function(a,b){
  var keyA = $(a).text();
  var keyB = $(b).text();

  if (keyA < keyB) return -1;
  if (keyA > keyB) return 1;
  return 0;
});
var ul = $('.alphaList');
$.each(items, function(i, li){
  ul.append(li); /* This removes li from the old spot and moves it */
});
Chatu avatar Nov 20 '2008 05:11 Chatu

Prueba esto:

var elems = $('.alphalist li').detach().sort(function (a, b) {
  return ($(a).text() < $(b).text() ? -1 
        : $(a).text() > $(b).text() ? 1 : 0);
}); 
$('.alphalist').append(elems);
berniecc avatar Oct 25 '2016 11:10 berniecc