Ir para conteúdo

POWERED BY:

Arquivado

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

Tiagoo

Remover item do combo

Recommended Posts

Estou fazendo um script que carrega uma combo com dados do mysql. Ela funciona perfeitamente a não ser por um bug, que acontece no javascript.

 

funções:

 

function CarregaCombo(campo,tipo) {	remove_tudo(tipo);	document.all.sframe.src="carrega.php?id="+campo.value+"&tipo="+tipo;}function adiciona(texto,valor,objeto) {	linha = document.createElement("OPTION");	linha.text=texto;	linha.value=valor;	document.form[objeto].add(linha);}function remove_tudo(objeto) {	var tam = document.form[objeto].length;	while( tam > 0 ) { 		document.form[objeto].remove(tam-1); 		tam--;	}}

uso:

 

<select name="tipo2" id="select" onChange="CarregaCombo(this,'marca');"><option selected value="Selecione">Selecione</option><?	include "conexao.php";		$resultado = mysql_query("SELECT * FROM estrutura where idPai=0 and id <> 3");	$num_rows = mysql_num_rows($resultado);		while ($row = mysql_fetch_row($resultado)) {		  echo "<option value=".$row[0].">". $row[1]."</option>\n";	}?></select><select name="marca" id="select5" onChange="CarregaCombo(this,'modelo');"><option>Selecione</option></select><select name="modelo" id="select6" onChange=""><option>Selecione</option></select>

Finalmente, os combos "marca" e "modelo" sao zerados pela função "remove_tudo" e onde tem o texto Selecione, entam os dados do db, porém o 1o select "tipo2" não passa pela função remove_tudo, pois ele é o primeiro a ser carregado e deve ter algum valor. Logo gostaria de saber oque posso usar para que depois de carregados os dados, fiquem somente eles no combo, sem o option "Selecione"

 

Não sei se fui claro o suficiente, é meio complicado, mas desde já agradeço.

 

PS: já tentei usar um "document.form['tipo2'].remove(0);" mais ai ele deleta o Selecione, e depois continua deletando os outros dados da combo a cada atualização.

Compartilhar este post


Link para o post
Compartilhar em outros sites

if (document.form['tipo2'].value = 'Selecione') document.form['tipo2'].remove(0)

Compartilhar este post


Link para o post
Compartilhar em outros sites

if (document.form['tipo2'].value = 'Selecione') document.form['tipo2'].remove(0)

valeu velho, sua idéia estava quase lá, mais seguinte faltava 1 = ali antes do "seguinte" porque asism ele estava adquirindo o valor, e não igualando, e ele só deletava o Selecione quando ele fosse selecioando, achei uma maneira de fazer com eu queria:
if (document.form['tipo2'].options[0].value == "Selecione") { document.form['tipo2'].remove(0);}
Mesmo assim muito obrigado.

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.