Problemas con un select

Monica Arias
24 de Enero del 2005
Hola a todos:

Tengo el siguiente problema,.. En un formulario tengo varios Select, con los mismos valores. Lo que necesito hacer es que si en cualquiera de ellos selecciono un determinado valor, tengo que hacer que en los demás select desaparezca o que no se pueda selecciona una determinada opción....

No encuentro la manera de hacerlo...

Un saludo

Jorge
24 de Enero del 2005
Juraria que ya te han respondido en http://www.programacion.com/html/foros/3/msg/178538/
Vale que no hace exactamente lo que tu pedias pero bueno, se ve la tecnica a usar. Solo tienes que adaptarlo a tus necesidades particulares.



Si no lo he entendido mal, tienes varios select con el mismo conjunto de opciones en todos ellos.
Quieres que cada vez que el usuario seleccione un valor en uno de los combos, ese valor desaparezca de la lista de opciones del resto de los combos, ¿es eso, no?


Yo lo haria asi:
Primero, tener un combo oculto con todas las opciones posibles.

El resto de los combos, con los que interacciona el usuario los llamo "combo1", "combo2", "combo3", etc....

Cada uno de esos combos tiene asociado al evento "change" una funcion JavaScript.
Esa funcion lo que tiene que hacer es:
Para cada combo (visible), darle como opcion posible toda aquella que este en la lista de opciones del combo oculto salvo que dicha opcion este seleccionada en alguno de los otros combos visibles.
La forma mas sencilla es borrandole toda la lista de opciones y volviendo a añadirle solo aquellas opciones que cumplan la condicion antes dicha.
Y tras haber vuelto a rellenar la lista de opciones, volver a dejar como seleccionada la que estuviera antes de haber hecho nada, claro.


He preparado una pagina de ejemplo que hace esto. La puedes ver en http://myheels.webcindario.com/consult/179119.htm
La enjundia esta en la funcion "updateOptions".
Tanto la funcion "initializeCombos" como los scripts incrustrados en el body del documento son simplemente para hacer mas flexible/extensible es numero de combos y opciones y tener que escribir menos. Pero no hacen nada que no se pueda hacer con html estatico.