Ir para conteúdo

POWERED BY:

Arquivado

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

Célio-Ctba

Após Escolher Valor Na Combo Abre Um Text

Recommended Posts

Fala galera!!!!Preciso de uma idéia para o seguinte:Tenho uma pergunta no formulário, cuja as respostas são números de 1 a 5 que estão disponíveis em um combo box, gostaria que, após o usuário escolher um dos valores, abra um campo texto para que ele escreva uma justificativa pelo valor escolhido.Não sei se é possível com JS, ou terá q ser linguagem dinamica?Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

AAlves, você é um genio do JS, não tinha a minima ideia de como funcionava isto você matou a pau em poucas linhas. Foi mal não ter pesquisado.

 

 

 

 

 

Mto obrigado http://forum.imasters.com.br/public/style_emoticons/default/joia.gif http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

;) ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acabei esbarrando no seguinte problema, se for mais de uma combo, como fazer?

 

<script language="JavaScript" type="text/javascript">function ShowHideDIV(NomeDIV, Valor){Valor = document.getElementById("Lista","Lista1").value;if (Valor=="Três" | Valor=="Um") { //Aqui escolhemos em qual opção o text deve aparecerdocument.getElementById(NomeDIV).style.display = "block";} else if (Valor=="Quatro" | Valor=="Dois") { //Nesta linha são os combos q fazem o text sumirdocument.getElementById(NomeDIV).style.display = "none";}}</script>
Note que acrescentei "Lista1" na linha
Valor = document.getElementById("Lista","Lista1").value;
e dei nome de lista1 para o outro select, mas assim não funcionou.

<form name="Teste">Tipo: <select name="Lista" size="1" id="Lista" onChange="ShowHideDIV('CampoOculto','Três');"><option value=""></option><option value="Um">Um</option><option value="Dois">Dois</option><option value="Três">Três</option><option value="Quatro">Quatro</option></select><br><br><div id="CampoOculto" style="display: none;"><input type="text" name="Caixa"><br></div>
O que mais precisa ser mudado?

 

 

Abraços




			
		

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como assim ? Outra combo ? :mellow:

Na verdade vou ter várias combos, em um questionário tenho por exermplo 10 questõesNo final de cada questão tem um combo para o usuario escolher a resposta que serão opções de 1 a 5.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu to fazendo de um jeito aqui pra quebrar o galho mais é muito trabalhosos e pesado, para cada combo inserida no formulário estou adicionando uma função:

function ShowHideDIV2(NomeDIV, Valor){

-------

------

-----}

apenas troco o nome para a proxima assim:

function ShowHideDIV3(NomeDIV, Valor){

-------

------

-----}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas passando o nome da DIV, você não precisa passar o nome da combo! Dê um exemplo prático do que quer... :mellow:

É assim, tenho um questionário ao fim de cada pergunta coloco um combo com opções de 1 a 5, se o usuario selecionar 1 ou 2, abre-se um campo para que ele digite uma justificativa.Para inserir 1 combo box para a primeira pergunta o cód é este:
//***************Função para o primeiro campo do formulário(motomoney) ******************************************function ShowHideDIV(NomeDIV, Valor){Valor = document.getElementById("motomoney").value;if (Valor=="1" | Valor=="2") { //Aqui escolhemos em qual opção o text deve aparecerdocument.getElementById(NomeDIV).style.display = "block";} else if (Valor=="3" | Valor=="4" | Valor=="5" | Valor=="") { //Nesta linha são os combos q fazem o text sumirdocument.getElementById(NomeDIV).style.display = "none";}}//***************Fim da função para o primeiro campo do formulário ******************************************
Aqui o cód do formulário:
<!--******************cod do primeiro combo***************************-->		  <tr bgcolor="#EBEBD6"> 			<td  class="corpo" colspan="6" align="center" valign="middle" bgcolor="#EBEBD6"><div align="left"><strong>			<select name="motomoney" size="1" id="motomoney" onChange="ShowHideDIV('CampoOculto','2');">			  <option value="5">5</option>			  <option value="4">4</option>			  <option value="3">3</option>			  <option value="2">2</option>			  <option value="1">1</option>			</select>			</label>				   			Motomoney:</strong> bônus trimestral 			em forma de vale compras.				<div id="CampoOculto" style="display: none;">Justifique:				<textarea name="just_motomoney" rows="2" cols="50"></textarea></div></td><!-- escolha aqui o numero de rows q vao aparecer ao usuario --><!--******************fim do cod do primeiro combo***************************-->
Para inserir o combo para a pergunta seguinte o que estou fazendo é repetir a função JavaScript e alterando o nome assim:
//***************Função para o segundo campo do formulário(treina_exclus) ******************************************function ShowHideDIV1(NomeDIV, Valor){Valor = document.getElementById("treina_exclus").value;if (Valor=="1" | Valor=="2") { //Aqui escolhemos em qual opção o text deve aparecerdocument.getElementById(NomeDIV).style.display = "block";} else if (Valor=="3" | Valor=="4" | Valor=="5" | Valor=="") { //Nesta linha são os combos q fazem o text sumirdocument.getElementById(NomeDIV).style.display = "none";}}//***************Fim da função para o segundo campo do formulário ******************************************
Aqui o cód da combo box para a segunda questão:
<!--******************cod do segundo combo***************************-->		  </tr>		  <tr bgcolor="#EBEBD6"> 			<td class="corpo" colspan="6" align="center" valign="middle" bgcolor="#EBEBD6"><div align="left"><strong>			<select name="treina_exclus" size="1" id="treina_exclus" onChange="ShowHideDIV1('CampoOculto1','3');">			  <option value="5">5</option>			  <option value="4">4</option>			  <option value="3">3</option>			  <option value="2">2</option>			  <option value="1">1</option>			</select>			</label>			Treinamentos Exclusivos:</strong> treinamentos 			exclusivos sobre produtos Motorola, gestão financeira de 			sua revenda e seminários de vendas.				<div id="CampoOculto1" style="display: none;">Justifique: <!-- o nome do id precisa ser diferente p cada combo-->				<textarea name="just_treina_exclus" rows="2" cols="50"></textarea></div></td><!-- escolha aqui o numero de rows q vao aparecer ao usuario --><!--******************fim do cod do segundo combo***************************-->

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.