Foros del Web » Programando para Internet » Javascript »

Ordenar campos de select

Estas en el tema de Ordenar campos de select en el foro de Javascript en Foros del Web. Hola, me gustaría saber si se puede odenar los campos que ofreces en una seleccion. Ejemplo: <select name="Año" onchange="cambia(document.elegir.Numero)"> <OPTION VALUE="2001">2001</OPTION> <OPTION VALUE="2002">2002</OPTION> </select> ------------ ...
  #1 (permalink)  
Antiguo 18/05/2006, 04:19
 
Fecha de Ingreso: diciembre-2005
Mensajes: 42
Antigüedad: 18 años, 4 meses
Puntos: 0
Ordenar campos de select

Hola, me gustaría saber si se puede odenar los campos que ofreces en una seleccion. Ejemplo:

<select name="Año" onchange="cambia(document.elegir.Numero)">
<OPTION VALUE="2001">2001</OPTION>
<OPTION VALUE="2002">2002</OPTION>
</select>
------------
<select name="Numero">
<OPTION VALUE="507">507</OPTION>
</select>

Iré añadiendo nombres en el onchange:
case 0:
addOpt(oCntrl, 0, "507", "507");
addOpt(XXXXXXXXXXXX, "304");

Pero si añado uno y tengo que cambiar todos los que haya(imaginemos 200), pues me puedo morir.

Por eso mi pregunta es si se puede hacer los option y que los visualice alfabeticamente.
  #2 (permalink)  
Antiguo 06/06/2006, 04:42
 
Fecha de Ingreso: diciembre-2005
Mensajes: 42
Antigüedad: 18 años, 4 meses
Puntos: 0
Me respondo para que quede constancia:

function ordenMasActual( primero, ultimo, oCntrl)
{
var i;
for(i=0; (ultimo-primero) >= 0; i++)
{
addOpt(oCntrl, i, ultimo, ultimo);
ultimo = ultimo-1;
}
}

function cambia(oCntrl){
while (oCntrl.length) oCntrl.remove(0);
switch (document.elegir.Año.selectedIndex){
case 0:
ordenMasActual(507, 509, oCntrl);
break;
case 1:
ordenMasActual(504, 506, oCntrl);
break;
case 2:
ordenMasActual(495, 503, oCntrl);
break;
}
}

Me he creado una funcion. Logicamente solo fucniona con numeros, para letras habria que pensar más u otra cosa....

<select name="Año" onchange="cambia(document.elegir.Numero)">
<OPTION VALUE="2007">2007</OPTION>
<OPTION VALUE="2006">2006</OPTION>
<OPTION VALUE="2005">2005</OPTION>
</select>
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:09.