Foros del Web » Programando para Internet » Javascript »

Recorrer varios select con javascript

Estas en el tema de Recorrer varios select con javascript en el foro de Javascript en Foros del Web. En una pagina con un formulario, tengo 15 select. Uso un ID diferente para cada uno, pero es un poco engorroso. Mi pregunta: Se puede ...
  #1 (permalink)  
Antiguo 16/10/2010, 08:55
 
Fecha de Ingreso: julio-2002
Mensajes: 61
Antigüedad: 22 años, 4 meses
Puntos: 1
Recorrer varios select con javascript

En una pagina con un formulario, tengo 15 select.

Uso un ID diferente para cada uno, pero es un poco engorroso.

Mi pregunta:
Se puede definir todos los select con un mismo ID (en mi caso: Form_Select), y luego tratarlos cada uno por separado en javascript, como si fuesen un array?

en la funcion javascript asociada al evento onchange de las select, quiero hacer algo asi:

for (i=0; i<=14; i++) {
if (i>=1 and i<=5) {
if (form.Form_Select[i].value > 0) {
contador = contador + 1;
}
}
.....tratar resto de valores i......
}

es decir, recorrerme las 15 select, y tratar el valor de cada una por separado.

pero no me funciona.

Y otra duda, como puedo controlar que si el valor de una select se encuentra en cualquier otra, de ésta otra select desaparezca el valor y se cargue el valor por defecto?
  #2 (permalink)  
Antiguo 16/10/2010, 09:38
 
Fecha de Ingreso: octubre-2003
Ubicación: lima
Mensajes: 57
Antigüedad: 21 años, 1 mes
Puntos: 0
Respuesta: Recorrer varios select con javascript

¿? no puedes poner el mismo ID a dos elementos distintos, desvirturas con eso el concepto de ID, podrias ponerlo asi frmslc[N] y vas cambiando la N, creo que alguna vez me funciono... o le pones frmclcN y fas jugando con el nombre.
__________________
GUMER FERNANDEZ HUATUCO
--------------------------------------
Solo hay un dio$
  #3 (permalink)  
Antiguo 16/10/2010, 10:00
 
Fecha de Ingreso: julio-2002
Mensajes: 61
Antigüedad: 22 años, 4 meses
Puntos: 1
Respuesta: Recorrer varios select con javascript

buenas

ya he solucionado en parte el tema

recorrer varios select con la misma ID me funciona con esto:

form.Form_Select[i].value

el fallo estaba en el IF que ponia AND en vez de &&

lo que todavia no he encontrado la solucion es como quitar el valor de un select, si otro cualquiera le pongo el mismo valor, ahi va el codigo por si algun valiente lo intenta:

for (i=0; i<=14; i++) {
if ((i>=1) && (i<=5)) {
if (form.Form_Select[i].value > 0) {
v_cont1 = v_cont1 + 1;
}
}
if ((i>=6) && (i<=10)) {
if (form.Form_Select[i].value > 0) {
v_cont2 = v_cont2 + 1;
}
}
if ((i>=11) && (i<=14)) {
if (form.Form_Select[i].value > 0) {
v_cont3 = v_cont3 + 1;
}
}

---> con lo siguiente, pretendo recorrer, por cada elemento, el resto de elementos, por si alguno tiene el mismo valor del que estoy tratando
--> i = elemento tratado, j = resto de elementos

for (j=0; j<=14; j++) {
if (i != j) {
if ((form.Form_Select[i].value = form.Form_Select[j].value) && (form.Form_Select[i].value != 0)) {
form.Form_Select[j].value = 0;
if ((j>=1) && (j<=5)) {
v_cont1 = v_cont1 - 1;
}
if ((j>=6) && (j<=10)) {
v_cont2 = v_cont2 - 1;
}
if ((j>=11) && (j<=14)) {
v_cont3 = v_cont3 - 1;
}
}
}
}
}

Etiquetas: recorrer, 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 05:59.