Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) "Pegar" status de RadioButton sem Clicar


Rafael Spilki

Pergunta

Fala galera!

Alguém sabe como pegar um status de um radiobutton sem a necessidade do click?

Explico melhor:

Uso uns radiobuttons que entre outras coisas oculta/mostra div's quando selecionados, só que quando o user entra na página pela primeira vez ou da um refresh já tem uma opção previamente marcada desse radiobutton e como a minha função é chamada no OnClick acaba que as div's só são mostradas quando o user clica novamente sobre a opção desejada.

Tentei fazer aqui umas gambiarras usando o onload, mas como minha função funciona pelos status dos radiobuttons isso não funcionou direito.

Alguém tem alguma sugestão?

Segue o trecho do código (eu peguei essa função aqui do fórum mesmo):

<script>
function trocadivs(status){
    if (status=="estagio"){
        document.getElementById("div_estagio").style.display = '';
        document.getElementById("div_emprego").style.display = 'none';
    }else if (status=="emprego"){
        document.getElementById("div_estagio").style.display = 'none';
        document.getElementById("div_emprego").style.display = '';
    }else if (status=="ambos"){
        document.getElementById("div_estagio").style.display = '';
        document.getElementById("div_emprego").style.display = '';
    }
}
</script>

<input name="emprego" type="radio" value="emprego" onclick="trocadivs(this.value)">Emprego 
<input name="emprego" type="radio" value="estagio" checked onclick="trocadivs(this.value)"> Est&aacute;gio 
<input name="emprego" type="radio" value="ambos" onclick="trocadivs(this.value)">Ambos

<div id="div_emprego" style="display:none">
emprego / 
</div>
<div id="div_estagio" style="display:none">
Estagio
</div>

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Oras de boa usa o "onLoad" mesmo o "segredo" é a forma de pegar os radios só isso ... o chato é que as divs só irão aparecer após a página carregar por completo =(

veja um exemplo:

<html>
<body onload="VerificaRadios();">

<script>
function VerificaRadios() {
 var obj_form = document.forms.iptradios;

 var RadioEmprego = obj_form.emprego[0].checked;
 var RadioEstagio = obj_form.emprego[1].checked;
 var RadioAmbos   = obj_form.emprego[2].checked;

 if (RadioEmprego) { trocadivs("emprego"); }
 else if (RadioEstagio) { trocadivs("estagio"); }
 else { trocadivs("ambos"); }
}
</script>

<form name="iptradios">
 <input name="emprego" type="radio" value="emprego" onclick="trocadivs(this.value)">Emprego
 <input name="emprego" type="radio" value="estagio" checked onclick="trocadivs(this.value)"> Est&aacute;gio
 <input name="emprego" type="radio" value="ambos" onclick="trocadivs(this.value)">Ambos
</form>

</body>
</html>

Link para o comentário
Compartilhar em outros sites

  • 0

vê se te ajuda ae!

fiz um teste aqui no FF e funcionou de boa!

function mostradiv(status){
    alert(status);
}

window.onload = function(){
    obj = document.getElementsByName('tipo');
    for(i = 0;i < obj.length; i++){
        if(obj[i].checked) vstatus = obj[i].value;
    }
    mostradiv(vstatus);
}
<input type="radio" id="rd1" name="tipo" value="emprego" onClick="mostradiv(this.value);" checked="checked"/>Emprego
<br/>
<input type="radio" id="rd2" name="tipo" value="estagio" onClick="mostradiv(this.value);"/>Estágio
<br/>
<input type="radio" id="rd3" name="tipo" value="ambos" onClick="mostradiv(this.value);"/>Ambos

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...