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

63
Vistas
Javascript que devuelve el conjunto de datos de la función a xmlhttprequest obtener parámetros

Tengo un atributo de datos que se completa con una variable php. La variable php es un valor numérico.

 <?php $userId = 123; ?> <div class="agent-detail-info" data-id="<?= $userId ?>"></div>

Estoy tratando de obtener el valor del conjunto de datos y pasarlo a un parámetro de URL de obtención. Puse esto en su propia función para window.onload ya que php imprime el html dinámicamente.

 function userData() { let infoWrap = document.querySelector(".agent-detail-info").dataset.id; console.log(infoWrap); return infoWrap; } window.onload = userData; const request = new XMLHttpRequest(); request.open( "GET", `url&usertolookup=${userData()}` );

Console.log(infoWrap) devuelve el valor correcto en la consola, pero la consola muestra un error y no completa los parámetros de obtención

TypeError no capturado: no se pueden leer las propiedades de nulo (leyendo 'conjunto de datos') en userData

Estoy pensando que esto está sucediendo porque la solicitud se ejecuta antes de que se llame a la función userData y el DOM aún no está poblado.

Esto funciona:

 function userData() { let infoWrap = 123; return infoWrap; }

Intenté envolver la solicitud en una función que se ejecuta después de cargar el DOM, pero esto tampoco funcionó.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Debe ejecutar el código al final desde window.onload , para que se ejecute después de agregar el .agent-detail-info al DOM. Ejecutar userData() en sí mismo no hace nada.

 window.onload = () => { const request = new XMLHttpRequest(); request.open( "GET", `url&usertolookup=${userData()}` ); };

about 4 years ago · Juan Pablo Isaza Denunciar
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