entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

2votos

Cargar contenido jQuery

Que tal, estoy armando una aplicacion y todo mi contenido lo cargo a travez de archivos externos usando jQuery.
Mi problema es que al cargar el archivo externo en mi div contenedor, este no me permite utilizar ninguna funcion jQuery, a menos que utilice un onclick, todas las librerias me las carga perfectamente, solo no puedo utilizar nada de jquery en el archivo externo.

Espero alguien pueda ayudarme.

Cambie la funcion para cargar el contenido:

function getInfo(url)

{
    var con = document.getElementById('content');
    xhr = new XMLHttpRequest();
    xhr.onreadystatechange = function (e) 
    { 
       if (xhr.readyState == 4 && xhr.status == 200)
        {
          con.innerHTML  = xhr.responseText;
        }
    }
    xhr.open("GET",url, true);
    xhr.setRequestHeader('Content-Type', 'text/html');
    xhr.send();
}

este es el código a través del cual cargo los archivos externos, pero al tener cargado el archivo no me permite usar jquery.

1voto

Peter comentado

Por favor edita tu pregunta y agrega el código que estás utilizando para poder saber en dónde esta el problema.

Saludos.

1 Respuesta

3votos

magarzon Puntos30650

Buenas.

Aparte de que en el desarrollo moderno de frontend no es una buena práctica cargar html (o al menos no MUCHO html) usando AJAX, entiendo que simplemente quieres que se disparen eventos asociados, como un "click".

Esto es muy sencillo: usa la función on() de jQuery. Por ejemplo, si tienes esto en tu código:

$('.enlace').on('click', function() {console.log('enlace')});

Se ejecutará la función siempre que se haga click en cualquier elemento con la clase enlace, incluso si ese elemento se ha cargado posteriormente con AJAX.

Otra cosa que espero no estés haciendo (o esperando que funcione así) es que ese html que cargas incluya javascript, porque en ese caso no se va a ejecutar (o al menos no de forma sencilla, se puede llegar a conseguir, pero de nuevo, malísima práctica)

2votos

MatsMax comentado

Gracias magarzon lo tomare en cuenta, nunca había creado una aplicación desde cero, así que creí que seria una buena practica hacerlo de esta manera. Tomare en cuenta tu consejo y cambiare la estructura. Muchas gracias.

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta