29 de agosto de 2006

Cargar Javascript desde Javascript con Ajax

¿Que te parecería cargar solamente código javascript en una página para aquellas funciones que un usuario decida realizar y no para todas las demás que pudieran estar incluidas en la página pero que el usuario no decida ejecutar?

Muchas veces nos vemos con el problema de tener que cargar un gran número de funciones en javascript en una determinada página sabiendo que un usuario utilizará solo un par de ellas, pero como no sabemos cuales serán las necesarias, nos vemos obligados a incluirlas todas.

Pues les tengo una buena noticia: Podemos cargar trozos de javascript perfectamente por Ajax, así solo llamaremos a las funciones que sean necesarias para las opciones seleccionadas por el usuario. ¿Cómo hacerlo?

Pues para cualquiera que haya usado Ajax para traer texto, HTML ó datos en formato XML, no debe ser sorpresa saber que se puede traer por Ajax algo de Javascript ya que hablamos de simple texto plano.

El truco está en traerlo según requerimiento como se hace con muchas otros contenidos mediante Ajax, y ejecutarlo luego mediante la función de javascript "eval" que permite evaluar y ejecutar una cadena de caracteres como sentencias del lenguaje.

No es para nada complicado.
simplemente se trata de evaluar la respuesta obtenida por el objeto XMLHttpRequest

eval(XMLHttpRequestObject.responseText)

Así de simple.

1 comentario:

minterior dijo...

Y cómo puedes usar las funciones fuera de eval? Cómo las atas a la ventana para poder usarlas más tarde? En teoría al usar eval sólo están disponibles ahí dentro, pero en la siguiente línea ya no.

Entradas populares