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
JQuery Ajax no reemplaza el elemento div con el archivo de texto

Entonces, soy bastante nuevo en JQuery y AJAX en general. Creé una aplicación para recuperar datos de la API de Spotify, que escribe en song.txt (esta parte funciona bien. Se actualiza cada segundo, como debería). El archivo HTML extraerá el contenido de song.txt y cambiará. el div con id de 'pista'

 <!DOCTYPE html> <html> <head> <title>Camashima's Site</title> <script src="//ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script> <script type="text/javascript"> setInterval(function () { $(document).ready(function () { $('#track').load('../output/song.txt'); }); }); </script> </head> <body> Currently Playing: <div id="track"> . </div> </body> </html>

El código JS publica el archivo html en el servidor sin problemas, y veo que se está reproduciendo actualmente: pero nada más. Entonces eso me dice que no es el problema. Entonces, ¿qué estoy haciendo mal aquí? Debería estar cargando song.txt en el div "pista", ¿verdad?

Además, estoy usando Goorm-ide para alojar mi contenedor, y la consola no es tan detallada como las herramientas de desarrollo de Chrome. Esperado : el div de "pista" se reemplazará con el contenido de song.txt

Resultado : No pasa nada.

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

0

Ya sea que la parte de AJAX funcione o no, el problema principal aquí es que (1) está agregando toneladas de eventos document.ready y (2) haciéndolo indefinidamente en una sucesión muy rápida .

Puede corregir esto (1) usando un evento document.ready y configurando su intervalo dentro de ese y (2) proporcionando un retraso en el intervalo, incluso si es solo un segundo. Por ejemplo:

 $(document).ready(function () { // execute this code once, and only once, when the document is ready setInterval(function () { $('#track').load('../output/song.txt'); }, 1000); // perform this interval operation every 1000 ms });

A partir de ahí, puede comenzar a depurar razonablemente el problema de AJAX (si es que lo hay). Me doy cuenta en un comentario sobre la pregunta que indicó que las herramientas para desarrolladores de Chrome están deshabilitadas. Por lo tanto, deberá corregir eso o encontrar otra herramienta para depurarlo. Pero esencialmente querrá observar las solicitudes y respuestas de AJAX. Confirme que la dirección solicitada es la que espera que sea y observe la respuesta del servidor. El código del lado del cliente aquí es extremadamente simple y "funciona" bien, pero si el resultado general no es el esperado, su único recurso es depurar esas interacciones con el servidor.

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