Ir para conteúdo

POWERED BY:

Arquivado

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

LucasouzaRJ

radiobutton - como pegar valor?

Recommended Posts

Olá pessoal,

 

uma dúvida, como eu faço para saber qual radio button foi clicado para poder habilitar ou não um campo texto.

O ideal seria que ele iniciasse desabilitado com o "nao" checado e se fosse clicado no sim, o campo texto apareceria, isto sem submeter o form.

 

Alguem pode me ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Consegui resolver uma parte do problema, usando o javascript e para a fase inicial tudo funciona ok. conforme descrevi acima.

 

No script:

 

function mostraTela(){
document.getElementById('pernoite').style.visibility = 'visible';
}

function ocultaTela(){
document.getElementById('pernoite').style.visibility = 'hidden';
}

no HTML:

 

<input type="radio"  name="chk_pernoite[]" id="radio" value="sim" onClick="mostraTela()"/>
	<label class='form_field'><strong>Sim</strong></label>
	<input type="radio"  name="chk_pernoite[]" id="radio" checked="checked" value="nao" onClick="ocultaTela()" />
	<label class='form_field'><strong>Não</strong></label>	
	<input type='text' name='local' id='pernoite' style='visibility:hidden' size='25' maxlength='25' value=''/>

Mas contiuo com um problema, ao submeter o form, no reload, preciso quea opcao escolhida volte marcada e isso nao acontece. Pensei em colocar uma variavel no visibility, dizendo se esta hidden ou visible, mas cai no problema inicial de saber o valo escolhido no radio button.

Ja tentei varias formas e pesquisei bastante, mas nao consegui uma solucao.

Alguem sabe como se faz isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Para a opção escolhida voltar marcada você pode usar $_SESSION.

 

Mais ou menos assim. Na página que envia o formulário você grava a opção escolhida em uma SESSION e exibe um checked="checked" na opção que estiver dentro da SESSION.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha cara.. nos seus radio buttons utilize o evento onClick.. tente isto

Compartilhar este post


Link para o post
Compartilhar em outros sites

<html>

<head>

<script type="text/javascript">

 

function checarRadio() {

//Recuperando o valor da sessão em PHP e armazenando em uma variável:

var opcaoSelecionada = "Palmeiras";

 

var objRadio = document.forms["form1"].elements["opcoes1"];

if (opcaoSelecionada.length > 0) {

for (i=0; i < objRadio.length; i++) {

if (objRadio.value == opcaoSelecionada) {

objRadio.checked = true;

}

}

}

 

}

 

function mostrarChecado() {

var objRadio = document.forms["form1"].elements["opcoes1"];

for (i=0; i < objRadio.length; i++) {

if (objRadio.checked == true) {

//Apenas alguns alertas

alert("Você torce para o "+objRadio.value+"! Parabéns!");

}

}

}

window.onload=checarRadio;

</script>

</head>

<body>

<form name="form1" action="paginaPHPouASP" method="post">

Você torce para qual time?

<br><input type="radio" name="opcoes1" value="Flamengo"> Flamengo

<br><input type="radio" name="opcoes1" value="São Paulo"> São Paulo

<br><input type="radio" name="opcoes1" value="Palmeiras"> Palmeiras

<br><input type="radio" name="opcoes1" value="Botafogo"> Botafogo

<br><input type="radio" name="opcoes1" value="Internacional"> Internacional

 

<br><br><input type="button" onClick="mostrarChecado()" value="Ver qual radio está checado!">

</form>

 

</body>

</html>

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.