| Ejecutar codigo javascript recibido desde llamadas Ajax en Mootools |
|
Descripción del problema: Dadas dos páginas diferentes, digamos página A y página B, cuando la página A contiene código javascript que referencia a elementos en A es decir, cuando ejecutamos código javascript que referencia a elementos del DOM de la misma página, no hay ningún problema. El problema surge cuando dentro de A hacemos una llamada AJAX a otra página, digamos una página B, esta segunda página devolverá un contenido. Si el contenido es solo código HTML no pasa nada, pero si junto con el HTML devolvemos tambien código Javascript que queremos que se ejecute una vez que la llamada Ajax finalice, entonces sucede que dicho código se ejecuta bien SOLO cuando se trata de javascript nativo pero los selectores de Mootools son ignorados.
Solución: 1. Usar Request.HTML en la página A para llamar a la página B 2. evalscripts:false y evalresponse:false en A 3. procesar el HTML devuelto por B manualmente 4. Hecho esto procesar el Javascript devuelto por B, también manualmente Ejemplo:
|