Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/04/2011, 16:42
Avatar de elmejorb
elmejorb
 
Fecha de Ingreso: abril-2011
Mensajes: 2
Antigüedad: 13 años, 1 mes
Puntos: 2
Información Ordenar Array multidimencional por un campo con javascript

Después de mucha lucha logre hacer una funciona para ordenar una array multidimencional con javascript:

Código:
/* Parametros:
        toOrderArray: Array a ordenar 
	campo: valor numerico que corresponde a numero del campo 
*/

function orderMultiDimensionalArray (toOrderArray, campo) 
{
	position = new Array();
	newRow = new Array();
	jQuery.each(toOrderArray, function(key, row) {
			regis = row[campo];
			position[key]  = [regis, key];
			newRow[key] = toOrderArray[key];
	});

	position.sort();
	
	returnArray = new Array();
	jQuery.each(position, function(key, row) {
			pos = position[key][1];
			returnArray[key] = newRow[pos];
	});				
	
	return returnArray;
}
//Arreglo de ejemplo
friend = new Array();
friend[0] = ["515015964", "Andres Martinez"]; 
friend[1] = ["529179233", "Luz Prada"]; 
friend[2] = ["530163540", "Yokoi Diaz"]; 
friend[3] = ["544049594", "Zuri Meraz"]; 

//obtenemos el arreglo ordenado por el campo del nombre
listaordenada = orderMultiDimensionalArray(friend, 1);
Espero que les sea de mucha ayuda.

Última edición por elmejorb; 19/04/2011 a las 16:48