Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Bruno_Ferreira

[Resolvido] Tirar uma opção de um campo select (combobox)

Recommended Posts

Bom dia amigos!!!

 

estou fazendo um formulario que consiste no seguinte, o usuario seleciona um time em um combobox, depois seleciona o time adversario em outro combobox. Gostaria que quando o usuario selecionar um determinado time em um dos combobox, esse time seja retirado da lista de options do outro combobox para que ele não possa selecionar o mesmo.

Como poderia fazer isso? já procurei algumas soluções aqui no forum mas nenhuma me atende.

 

Valeu galera!!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma logica:

 

Quando voce selecionar um item no combo, chame uma função (no evento onchange do combo) passando como parametro o objeto combo, exemplo, nomeFuncao(this)

 

Na função voce pega o text do item selecionado (selectedIndex), lembrando que na função você recebe o objeto como parametro.

Se o outro combo de times estiver exatamente igual (mesmas posições dos nomes dos times) entao nao precisar pegar pelo text, pode pegar pelo indice.

Ou seja, pega o indice do item selecionado e remove do outro combo com o mesmo indice. Para remover um item, exemplo:

objetoCombo.remove(objetoCombo.selectedIndex)

Se estiverem diferentes, entao você faz um FOR no outro combo, procurando pelo texto que você pegou do primeiro. Essa procura é feita por um IF, que compara o texto selecionado com o item do FOR.

 

Tenta fazer ai, se tiver algum problema posta o que você fez q a gente vai dando uma olhada

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu Andreia, funcionou perfeitamente

 

Segue o Exemplo aí pra quem precisar:

 

Aqui tem o formulario com os selects com mesma estrutura:

<form name="cadastro" action="../php/cadastro.php" method="post">

			<select name = "time1" onChange="retiraOption(this);">
				<option selected value="escolha">Escolha</option>
				<option name="atletico" value="atletico">Atlético</option>
				<option name="botafogo" value="botafogo">Botafogo</option>
				<option name="coritiba" value="coritiba">Coritiba</option>
				<option name="cruzeiro" value="cruzeiro">Cruzeiro</option>
				<option name="flamengo" value="flamengo">Flamengo</option>
				<option name="goias" value="goias">Goias</option>
				<option name="gremio" value="gremio">Gremio</option>
				<option name="palmeiras" value="palmeiras">Palmeiras</option>
				<option name="sao paulo" value="sao paulo">São Paulo</option>
				<option name="sport" value="sport">Sport</option>
			</select>

			<input type="text" name="placar1" size="1"/>
			X
			<input type="text" name="placar2" size="1"/>

			<select name = "time2">
				<option selected value="escolha">Escolha</option>
				<option name="atletico" value="atletico">Atlético</option>
				<option name="botafogo" value="botafogo">Botafogo</option>
				<option name="coritiba" value="coritiba">Coritiba</option>
				<option name="cruzeiro" value="cruzeiro">Cruzeiro</option>
				<option name="flamengo" value="flamengo">Flamengo</option>
				<option name="goias" value="goias">Goias</option>
				<option name="gremio" value="gremio">Gremio</option>
				<option name="palmeiras" value="palmeiras">Palmeiras</option>
				<option name="sao paulo" value="sao paulo">São Paulo</option>
				<option name="sport" value="sport">Sport</option>
			</select>

			<input type="submit" name="cadastrar" value="CADASTRAR"/> 
			<input type="reset" name="limpar" value="LIMPAR"/>
			</form>
Agora a função javascript, ela retira a opção selecionada no primeiro combo do segundo

 

function retiraOption(selec)
{
	document.cadastro.time2.remove(selec.selectedIndex);
}

Podem dar o pitaco.

Falow!!!!!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.