Ir para conteúdo

POWERED BY:

Arquivado

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

Red FeniX

[Resolvido] Mostrar um input a partir de um select

Recommended Posts

Opa galera, tudo tranqüilo?

 

Pois bem, creio que meu problema seja raltivamente fácil de solucionar, porém não achei na Internet algo que me esclareça totalmente esta dúvida:

 

Eu tenho um formulário HTML que servirá para cadastro de games. Dentro desse formulário, tenho um campo select "gplats" que remete as plataformas cadastradas. Dentre estas plataformas, tem uma opção chamada "Multi-Plataforma". A idéia é que, caso o user selecionasse essa opção, mostrasse automaticamente um campo com mesmo nome do select (gplats) para que o user pudesse informar quais são as plataformas.

 

O campo deve ter o MESMO nome porque estarei utilizando $_POST para enviar os dados ao BD.

 

Alguém pode dar uma luz ae?

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Coloca um onchange no seu select, que chama uma função e passa para essa função o valor do option escolhido, caso esse valor seja por exemplo ai multi, voce mostra o input (que tem que estar como display none), veja o codigo abaixo:

 

<script type="text/javascript">
function multi(valor){
	if(valor=='multi'){
		document.getElementById('gplats').style.display='block';
	}
}
</script>
<form action="teste.php" method="post">
	<select name="gplats" onchange="multi(this.value);">
		<option value="multi">Multi-Plataforma</option>
		<option value="pc">PC</option>
		<option value="ps2">PS2</option>
		<option value="ps3">PS3</option>
	</select>
	<input type="text" id="gplats" style="display:none;" name="input">
	<input type="submit">
</form>

Quanto ao caso de colocar o mesmo nome para pegar pelo post, faça o seguinte:

 

Temos o submit no form e é enviado para a pagina do servidor (terei como exemplo PHP), nela verificamos se o valor do post gplats for multi, voce pega o valor do post com o nome do input, caso nao seja igual a multi, continua com o script normalmente.

 

<?php
if($_POST['gplats']=='multi'){
	$pla=$_POST['input'];
}else{
	$pla=$_POST['gplats'];
}
echo $pla;
?>

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.