Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/09/2010, 14:44
amerkmif
 
Fecha de Ingreso: octubre-2009
Mensajes: 29
Antigüedad: 15 años, 1 mes
Puntos: 0
ordenamiento en javascript

hola a todos :

pues es que estoy realizando un script el cual me tiene que ordenar de menor a mayor y mayor a menor una matriz con unos determinado datos y pues he intentado de todas las formas posibles y solo he consegudio ordenar de menor a mayor pero el inverso no me sale

este es el codigo completo:


Código HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta content="text/html; charset=ISO-8859-1" http-equiv="content-type"><title>tablaDatos</title>

<script type="text/javascript">



</script>

</head>

<body>
<table style="text-align: left; width: 100%;" border="1" cellpadding="2"
cellspacing="2">
<tbody>
<tr>
<td
style="vertical-align: top; text-align: center; font-weight: bold;">Id<br>
</td>
<td
style="vertical-align: top; text-align: center; font-weight: bold;">Nombre<br>
</td>
<td
style="vertical-align: top; text-align: center; font-weight: bold;">Dirección<br>
</td>
<td
style="vertical-align: top; text-align: center; font-weight: bold;">Teléfono<br>
</td>
</tr>

<script type="text/javascript">
var i=0;
//Array de datos----
var lista=Array();

lista[0]=Array();  
lista[0][0]="1";
lista[0][1]="Carlos Lopez";
lista[0][2]="calle 23 No 17-14";
lista[0][3]="33333333";

lista[1]=Array();
lista[1][0]="2";
lista[1][1]="Pedro Perez";
lista[1][2]="calle 12 No 23-11";
lista[1][3]="22222222";

lista[2]=Array();
lista[2][0]="3";
lista[2][1]="Adriana Gomez";
lista[2][2]="calle 45 No 102-14";
lista[2][3]="44444444";

lista[3]=Array();
lista[3][0]="4";
lista[3][1]="Cristina Arbelaez";
lista[3][2]="calle 11 No 11-12";
lista[3][3]="99999999";
//----------------------

for(f=0;f<4;f++){
	for(c=0;c<4;c=c+4){
		document.write('<tr><td style="vertical-align: top;">'+lista[f][c]+'</td><td style="vertical-align: top;">'+lista[f][c+1]+'</td><td style="vertical-align: top;">'+lista[f][c+2]+'</td><td style="vertical-align: top;">'+lista[f][c+3]+'</td></tr>');
	}
}

function menorMayor(){	

for(var f=0;f<4;f++){
	for(var c=0;c<4;c=c+4){
		document.write('<tr><td style="vertical-align: top;">'+lista[f][c]+'</td><td style="vertical-align: top;">'+lista[f][c+1]+'</td><td style="vertical-align: top;">'+lista[f][c+2]+'</td><td style="vertical-align: top;">'+lista[f][c+3]+'</td></tr>');
	}
}
}
 function mayorMenor(){	
	for(var i=4;i>0;i--){
		for(var j=4;j>0;j=j-4){
			document.write('<tr><td style="vertical-align: top;">'+lista[i][j]+'</td><td style="vertical-align: top;">'+lista[i][j-1]+'</td><td style="vertical-align: top;">'+lista[i][j-2]+'</td><td style="vertical-align: top;">'+lista[i][j-3]+'</td></tr>');
}
}
}
</script>
</tbody>
</table>
<td>
<input name="ordenar" id="menor" value="ordenar mayor-menor" onclick="mayorMenor()" type="button"><br>
</td>
<td>
<input name="ordenar" id="mayor" value="ordenar menor-mayor" onclick="menorMayor()" type="button"><br>
</td>

</body>

</html> 

Aqui es donde tengo el problema en el script

Código:
<script type="text/javascript">
var i=0;
//Array de datos----
var lista=Array();

lista[0]=Array();  
lista[0][0]="1";
lista[0][1]="Carlos Lopez";
lista[0][2]="calle 23 No 17-14";
lista[0][3]="33333333";

lista[1]=Array();
lista[1][0]="2";
lista[1][1]="Pedro Perez";
lista[1][2]="calle 12 No 23-11";
lista[1][3]="22222222";

lista[2]=Array();
lista[2][0]="3";
lista[2][1]="Adriana Gomez";
lista[2][2]="calle 45 No 102-14";
lista[2][3]="44444444";

lista[3]=Array();
lista[3][0]="4";
lista[3][1]="Cristina Arbelaez";
lista[3][2]="calle 11 No 11-12";
lista[3][3]="99999999";
//----------------------

for(f=0;f<4;f++){
	for(c=0;c<4;c=c+4){
		document.write('<tr><td style="vertical-align: top;">'+lista[f][c]+'</td><td style="vertical-align: top;">'+lista[f][c+1]+'</td><td style="vertical-align: top;">'+lista[f][c+2]+'</td><td style="vertical-align: top;">'+lista[f][c+3]+'</td></tr>');
	}
}

function menorMayor(){	

for(var f=0;f<4;f++){
	for(var c=0;c<4;c=c+4){
		document.write('<tr><td style="vertical-align: top;">'+lista[f][c]+'</td><td style="vertical-align: top;">'+lista[f][c+1]+'</td><td style="vertical-align: top;">'+lista[f][c+2]+'</td><td style="vertical-align: top;">'+lista[f][c+3]+'</td></tr>');
	}
}
}
 function mayorMenor(){	
	for(var i=4;i>0;i--){
		for(var j=4;j>0;j=j-4){
			document.write('<tr><td style="vertical-align: top;">'+lista[i][j]+'</td><td style="vertical-align: top;">'+lista[i][j-1]+'</td><td style="vertical-align: top;">'+lista[i][j-2]+'</td><td style="vertical-align: top;">'+lista[i][j-3]+'</td></tr>');
}
}
}
El problema esta en el metodo mayorMenor() y la ordenacion se debe hacer segun el id

Si me pueden ayudar se los agrdeceria