estoy leyendo un fichero XML y filtrando por un valor para que todos los objetos que contengan una palabra en concreto me los ponga en un array.
Hasta ahí bien y me funciona pero el problema viene cuando intento ordenar ese array para luego mostrarlo por orden alfabético y no hay manera.
He probado con "array.sort" lógicamente cambiando array por el nombre de mi array y nada y también esto:
Código:
El código que estoy usando es este:items.sort(function(a, b) { return $(a).data('d').localeCompare($(b).data('d')); });
Código:
Gracias a todos por la ayuda! <!DOCTYPE html> <head> <title>Array</title> </head> <body> <div id="dvContent"> </div> <div class="clear"></div> <script src="jquery-1.12.0.min.js"></script> <script> $(document).ready(function () { $.ajax({ type: "GET", url: "Elearning.xml", dataType: "xml", success: function (xml) { var items = []; $(xml).find("Elearning").filter(function () { return $(this).find("Vista").text() == 'Core Firma'; }).each(function () { var title = $(this).find('Titulo').text(); items.push( $('<div />', { 'class' : 'items', text : title }) ); }); ítems.sort(); $.each(items, function(idx, itm) { $('#dvContent).append(itm); }); } }); }); </script> </body> </html>