AJAX - Javascript y Ajax

 
Vista:

Javascript y Ajax

Publicado por aNTRaX (2 intervenciones) el 25/12/2006 19:09:13
Hola. Tengo un problema en una web que utiliza ajax para cargar ciertas partes de su contenido. Cuando cargo una parte, introduzco el código obtenido de la consulta ajax directamente en un div, usando su propiedad innerHTML. Pero el código javascript que va añadido en ese código no es reconocido, el navegador ignora ese código y sus funciones. También ocurre lo mismo cuando añado un archivo javascript externo. ¿como puedo evitar esto?

Saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 30
Ha mantenido su posición en AJAX (en relación al último mes)
Gráfica de AJAX

RE:Javascript y Ajax

Publicado por Yamil Bracho (184 intervenciones) el 26/12/2006 19:18:55
Eso es lo dificil del asunto. Cuando trabajamos asi estamos a ciegas :-(
Te recomiendo usar una serie de alert para ver por donde va pasando el flujo de tu codigo y la otra es usar Mozilla con su error console y usar Venkman, el debugger de Javascript de Mozilla (http://www.mozilla.org/projects/venkman/)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Javascript y Ajax

Publicado por aNTRaX (2 intervenciones) el 26/12/2006 19:23:05
Si el problema no es ese, el problema es que el codigo que añado obtenido de la respuesta ajax, lo añado dentro del div, pero en ese código también hay secciones javascript que el navegador no procesa
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Javascript y Ajax

Publicado por Gonzalo (26 intervenciones) el 26/12/2006 20:10:03
No, no se procesa... es correcto.

El asunto es que no deberías devolverte código y html mezclado dentro de la respuesta. O devuelves una cosa o devuelves otra.

En general, deberías devolver datos y de ahí generar el HTML que quieras presentar. Es la forma limpia de hacerlo. Si prefieres, puedes devolver directamente HTML y volcarlo sin más a un div. Eso, para operaciones simples que no requieren más, es aceptable. Ahora bien, lo que no deberías es devolver ambas cosas juntas; y menos aún funcionalidad (métodos ejecutables) en la respuesta.

Si aún así quieres hacerlo, lo que tendrías que hacer es que tras recibir la respuesta, se coja la parte de código que venga y evaluarla, i.e. eval(codigo);

Pero como digo, no es demasiado recomendable.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar