Pessoal, tenho um formulário com 9 CAMPOS do tipo SELECT com nomes distintos, com valores de 1 a 9. Alguém poderia me passar uma função javascript onde o valor selecionado em um dos CAMPOS não aparecer nos outros, por exemplo, se no CAMPO 1 eu escolher “1” nos outros apareceria apenas de 2 a 9.
Obrigado.
function controlValues(objCaller){
var objForm = objCaller.form;
var el = objForm.elements;
for(var k in el){
if(el[k].id == objCaller.id) continue;
var opts = el[k].options;
for(var j in opts){
if(opts[j].value == objCaller.value) {
opts[j] = null;
}
}
}
}
Nao testei, acho que é mais ou menos isso. É só colocar essa função no onchange de todas as combos passando ‘this’ como parametro.
onchange=‘controlValues(this)’