Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

170
Vistas
My input-function in javascript always return false, even when a user inputs the correct value

I want to know why my function always returns false, and how I can fix it. At first I thought it had something to do with my syntax at check = ("stairway to heaven"===value || "Stairway to heaven"===value);. But no matter how I put it, it's always false.

I tried reading into this, but as far as I could understand, it doesn't help me.

I've created this in JavaScript to do different things depending on if the result of check is true or false.

else if (textNodes[15].id === 16 && nextTextNodeId === 16)  {
        showSongContainer();
        if(check) {
            showTextNode(17);
        }
        if (!check) {
            textElement.innerText = 'That’s superwrong! Maybe if you would use that small brain of yours you’d figure it out!';
            showTextNode(11);
        }

The above code runs this function first, to determine if a text input returns true (stairway to heaven) or false (anything other than stairway to heaven):

function showSongContainer() {
    songContainer.style.display = 'unset';
    const songInput = document.getElementById('songInput');
    const songButton = document.getElementById('songButton');

    songButton.addEventListener('click', (e) => {
        e.preventDefault();
        let value = songInput.value;
       
     check = ("stairway to heaven"===value || "Stairway to heaven"===value);
    });
} 

However, when the first else ifstarts (in the first codeblock), it always goes to the if(!check), before the text input has even been entered. Why is this? And how do I make it so that it returns the first if (in the first code block) if the text input is correct, and the other if, if incorrect?

I also have let check = ''; in a global scope at the beginning of my code, if that has anything to do with it.

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda