Ir para conteúdo

POWERED BY:

Arquivado

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

David Figueiredo

Manipulação de enventos (JAVASCRIPT)

Recommended Posts

Bom dia pessoal,

 

estou precisando de uma ajudinha de vcs, é + ou - assim:

 

tenho um formulário que tem um campo checkbox q eu qro q faça o seguinte: ao ser selecionado mostre um campo texto e se a seleção for retirada o campo texto some ou então o campo texto ja fica a mostra mas só q fica desabilitado ai se o checkbox for selecionado libera o campo texto se a seleção for retirada desativa novamente o campo texto. Eu acho que pra fazer isso se usa javascript provavelmente junto com CSS ou ajax, bem, ñ sei muito bem. gostaria que vcs me ajudassem, como posso fazer isso???

 

 

aguardo a resposta de vcs.

 

David Lima

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal, pesso novamente a ajuda de vcs.

 

se ñ tem como fazer isso ou se é utilizado outra linguagem para o mesmo por favor me digam, gostaria muito de uma resposta de vcs.

 

obg.

 

 

David Lima

Compartilhar este post


Link para o post
Compartilhar em outros sites

Calma cara.. não precisa "floodar".

<script type="text/javascript">
function mostrar(){
	var elemento = document.getElementById('campoTexto').style;
	if(elemento.display=='none')
		elemento.display = 'block';
	else if(elemento.display=='block')
		elemento.display = 'none';

}
</script>
</head>
<body>
<input type="checkbox" id="check" onclick="mostrar();" />
<input type="text" id="campoTexto" style="display:none" />
</body>
</html>
Isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu William!

 

o script funcionou beleza, mas ai tentei fazer o mesmo com um campo select e ñ estou conseguindo segue abaixo o código, da uma olhadinha pra ver o erro beleza??

 

<script type="text/javascript">
function mostrar(){
	var elemento = document.getElementById('pm').style;
	if(elemento.display=='none')
		elemento.display = 'block';
	else if(elemento.display=='block')
		elemento.display = 'none';

}
</script>
</head>
<body>
<select name="select" id="categoria">
			<option>Escolha uma Categoria</option>
			<option>Principal</option>
			<option>Destaque</option>
			<option onclick="mostrar();">Promoção</option>
			<option>Novidades</option>
		  </select>

<input type="text" id="pm" style="display:none" />
</body>
</html>

aguardo o retorno, obg.

 

David Lima

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ai a história é outra... você precisa capturar o value do select ne?!

Afinal, o evento não acontece no option, e sim no select. Fica o seguinte então:

<script type="text/javascript">
function mostrar(){
	if(document.getElementById('categoria').value=='este'){
		var elemento = document.getElementById('pm').style;
		if(elemento.display=='none')
			elemento.display = 'block';
		else if(elemento.display=='block')
			elemento.display = 'none';
	}

}
</script>
</head>
<body>
	<select name="select" id="categoria" onchange="mostrar();">
		<option>Escolha uma Categoria</option>
		<option>Principal</option>
		<option>Destaque</option>
		<option value="este">Promoção</option>
		<option>Novidades</option>
	</select>

<input type="text" id="pm" style="display:none" />
</body>
</html>
Detalhe, eu tb não sei programar JS, e é a primeira vez que faço essas coisas. ^^

Legal de responder aqui no fórum, é que consigo aprender tentando ajudar. Ve ai cara.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, deu certo, mas esta acontecendo o seguinte:

quando eu seleciono a opção promoção o campo texto aparece mais ai quando eu seleciono outra opção o campo testo ñ some, continua lá, o campo texto só some quando eu seleciono novamente a opção promoção tem como resolver isso???

 

e tbm gostaria de dar os parabens, por mais que você diga q ñ sabe programar em js você tem me ajudado bastante.

 

 

aguardo retorno, obg

 

David Lima

Compartilhar este post


Link para o post
Compartilhar em outros sites

^^ então.. isso que eu uso, é lógica pura.

vamos lá... oque você tem que fazer, é incrementar o js somente, para se você selecionar qualquer outro value, que não seja o do "promoção", dê um none nele!

Bora lá..

<script type="text/javascript">
function mostrar(){
	var elemento = document.getElementById('pm').style;
		if(document.getElementById('categoria').value=='este'){
			if(elemento.display=='none')
				elemento.display = 'block';
		}
		else {
			elemento.display = 'none';
		}
}
</script>
</head>
<body>
	<select name="select" id="categoria" onchange="mostrar();">
		<option>Escolha uma Categoria</option>
		<option value="principal">Principal</option>
		<option value="detalhe">Destaque</option>
		<option value="este">Promoção</option>
		<option value="novidades">Novidades</option>
	</select>

<input type="text" id="pm" style="display:none" />
</body>
</html>
Vai tentando tb cara.. eu só fico aqui programando as duvidas de outros pra ver se aprendo tb..

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.