El document.querySelector devuelve nulo pero el elemento existe

document.querySelector() devolverá el primer elemento que coincida con el grupo de selectores especificado. Si no se encuentra ninguna coincidencia, se devuelve ‘null’.

Sintaxis:

var input = document.querySelector("input.email");

Devolverá el primer elemento de entrada que tenga la clase ‘correo electrónico’.

Analicemos ahora el error «document.querySelector devuelve nulo, pero el elemento existe»

Ejemplo 1 : analicemos el error del selector «id» . En esto, #(hash) falta en el valor de querySelector. # definir que estamos seleccionando el selector “id”. En la salida, al hacer clic en el botón Enviar, podemos ver el siguiente error.

HTML

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content=
          "width=device-width, initial-scale=1.0">    
</head>
<body> 
    <h2 style="color:green;">GeeksforGeeks</h2>   
    <button id="out">Submit</button>
  
    <script>
        const get = document.querySelector('out')
        get.addEventListener('click',(e)=>{
            get.style.backgroundColor='red';
            get.innerHTML="Hii GFG , How r u???"
        })
    </script>
</body>
</html>

Producción:

 

Ejemplo 2: analicemos el error del selector de clase . en esto  (punto) falta en el valor de querySelector() . El . (punto) define que estamos seleccionando el selector de clase.

HTML

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content=
          "width=device-width, initial-scale=1.0">    
</head>
<body> 
    <h2 style="color:green">GeeksforGeeks</h2>   
    <button class="out">Submit</button>
  
    <script>
        const get = document.querySelector('out')
        get.addEventListener('click',(e)=>{
            get.style.backgroundColor='red';
            get.innerHTML="Hii GFG , How r u???"
        })
    </script>
</body>
</html>

Producción:

  • Al hacer clic en el botón Enviar:

 

  • Al hacer clic en el archivo en la sección «Fuente»:

 

Nota: Ambos dan el mismo error que el desarrollador necesita para especificar el tipo de selector (ya sea id o clase). En ambos ejemplos, falta, por lo que da el mismo error en las imágenes de salida.

Ejemplo 3: El siguiente código muestra la solución al problema anterior. Necesitamos especificar el tipo de selector que estamos usando como se muestra a continuación. Obtenemos el resultado correcto ya que el código está funcionando.

HTML

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content=
          "width=device-width, initial-scale=1.0">    
</head>
<body> 
    <h2 style="color:green">GeeksforGeeks</h2>   
    <button class="out">Submit</button>
  
    <script>
        const get = document.querySelector('.out')
        get.addEventListener('click',(e)=>{
            get.style.backgroundColor='red';
            get.innerHTML="Hii GFG , How r u???"
        })
    </script>
</body>
</html>

Producción:

 

Publicación traducida automáticamente

Artículo escrito por surbhikumaridav y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *