Eliminar valores(option) iguales entre combobox

Iniciado por CWeeD, 10 Febrero 2011, 22:01 PM

0 Miembros y 1 Visitante están viendo este tema.

CWeeD

Tengo dos combobox con 5 opciones iguales cada uno pues son comparativas, necesito que si elijo "option 1" en el combo1, se elimine "option 1" en el combo2:
Código:

<select name="combo1" id="combo1">
    <option value="a" selected class="select">1</option>
    <option value="b" selected class="select">2</option>
    <option value="c" selected class="select">3</option>
    <option value="d" selected class="select">4</option>
    <option value="e" selected class="select">5</option>
    </select>
<select name="combo2" id="combo2">
    <option value="a" selected class="select">1</option>
    <option value="b" selected class="select">2</option>
    <option value="c" selected class="select">3</option>
    <option value="d" selected class="select">4</option>
    <option value="e" selected class="select">5</option>
    </select>

Osea si escojo la opcion 1 se me deshabilite la opcion 1 en el otro combo, o que se elimine...gracias de antemano
Ser o conocer es el verdadero dilema!

Nakp

hay dos formas, la forma obstrusiva es agregar el evento onChange a cada select en el html (sucio, pero funciona) y lanzar una funcion, la otra es registrar los eventos de cada select... y para esta hay 2 formas xD usar jquery o hacerlo a la brava con esto, si te decides por la ultima te recomiendo leas esto

como quieras :P lo unico que debes comprobar es cual cambian (combo1 o combo2) llamemosles ob1 y ob2 (los creas con document.getElementById('id del objeto') )

y luego deshabilitas en uno el que se selecciono en el otro xD para eso hay tambien 2 formas :P eliminando del DOM o agregando disabled='disabled' a la opcion que eligio en objeto contrario (espero me entiendas x'D prefiero explicar que pegar un codigo)

pondre la de jQuery y deshabilitando (no eliminando) que seria el mas facil x'D no tengo tiempo :¬¬ ademas me encanta jQuery xD

Código (javascript) [Seleccionar]
$('combo1').change(function(){
   $('combo2').children('select[value='+this.value+']').remove();
});


o algo asi xD pruebalo que lo escribi en el aire jajajaja ojala se te ilumine el foco para hacer algo mas generico en base a esto :P
Ojo por ojo, y el mundo acabará ciego.