Erro iniciante - Pegar String em input e fazer comparação

08/04/2020

0

Olá, gente! Sou iniciante com Javascript e estou com o seguinte problema. Não consigo comparar a string dentro do bloco if, o código dá sempre como resultado o else. No começo pensei ser algum problema de conversão de tipo de valor, mas tentei converter a variável nacio para string e ainda sim não consigo comparar. Alguém me ajuda nessa!! Desde já agradeço!

Código JS:

var n = document.getElementById('botao');
n.addEventListener('click', ver_nacio);

var resposta = document.getElementById('res');

function ver_nacio(){
let nacio = document.getElementById('nacionalidade');
if(nacio == 'Brasil'){
resposta.innerHTML = 'Você é <strong>brasileiro</strong>';
} else {
resposta.innerHTML = 'Você é <strong>estrangeiro</strong>';
}

HTML:

<body>
<h1>Qual País você nasceu?</h1>
<input type="text" id="nacionalidade">
<input type="button" value="Verificar nacionalidade" id="botao">
<div id="res"></div>
</body>
Caio Bras

Caio Bras

Responder

Post mais votado

08/04/2020

debug o código antes do if:
console.log(document.getElementById('nacionalidade')),
ou
console.log(nacio)

no If utilize === para comparar


Obs: console.log(), imprime no console do Inspecionar Elementos do Navegador

Kleber Santos

Kleber Santos
Responder

Mais Posts

08/04/2020

Caio Bras

debug o código antes do if:
console.log(document.getElementById('nacionalidade')),
ou
console.log(nacio)

no If utilize === para comparar


Obs: console.log(), imprime no console do Inspecionar Elementos do Navegador

Muito obrigado! Usando o console.log(nacio) percebi que ele estava pegando a linha do html e não o valor inserido. Adicionei um .value e agora está funcionando.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar