Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Java Script

Para aplicar uma logica de if dentro de radio buttons meus id's precisam ser distintos ? Ou há outra forma de fazer ?

E como eu poderia fazer a chamada ao marcar o radio button ?Com submit, simulando o envio, mas como chamaria a função? no onclick ? Eu colocaria aquele js dentro de uma funçao e o chamaria, ao inves de history.go(0) ?

html

<!DOCTYPE html>

Informe seu sexo Masculino Feminino js

if (document.getElementById('male').checked) { alert(document.getElementById('male').value) } else if (document.getElementById('female').checked) { alert(document.getElementById('female').value) }

1 resposta
solução!

Para mostrar qual radio está marcado sem precisar de id, temos que usar alguma outra forma de selecionar o elemento. A mais versátil é usando o document.querySelector(), pois ele recebe qualquer seletor CSS. Com ele, podemos ir direto ao elemento, como a seguir.

Queremos selecionar o radio marcado. O radio é um input, então podemos fazer:

document.querySelector('input'); Mas isso vai pegar todos os inputs da página, inclusive o botão! A diferença está no tipo, queremos apenas os inputs com tipo=radio:

document.querySelector('input[type=radio]'); Agora só falta falar que, dentre esses radios, queremos apenas o que está selecionado:

document.querySelector('input[type=radio]:checked'); Assim nem precisamos dos ifs, a função fica:

function mostraRadioMarcado(){ alert(document.querySelector('input[type=radio]:checked').value; } Os seletores CSS são bem poderosos, e vale a pena conhecê-los pra usar no JS. Você consegue consultar os principais tipos de seletores aqui: https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Getting_started/Selectors