Delirios de un Informático

Delirando sobre informática, fotografía, programación, móviles y mucho más desde 2003

Parametros para onComplete en Prototype

votar
Archivado en JavaScript con fecha 12/May/2006 - 2 comentarios

La clases Ajax.Request y Ajax.Updater de la famosa Prototype facilitan mucho el trabajo con Ajax. Por ejemplo, para actualizar el contenido de un <div> basta con esto:

var myAjax = new Ajax.Updater(
'id_div_destino' ,
'url_datos',
{
method: 'get',
parameters: 'parametro1=tal'
});

¿Pero si quiero filtrar antes el contenido a mostrar?. Para eso necesitamos usar Ajax.Request:

var myAjax = new Ajax.Request(
'url_datos',
{
method: 'get',
parameters: 'parametro1=tal',
onComplete: mostrar
});

Esto hará que cuando se complete se llame a la función mostrar que como parámetro recibirá un objeto request. El problema es si se quieren pasar más parámetros a la funcion de mostrar, ya que onComplete: mostrar('parametro') sólo envía ese parametro. La solución es usar el método bind() del objeto function:

var myAjax = new Ajax.Request(
'url_datos',
{
method: 'get',
parameters: 'parametro1=tal',
onComplete: mostrar.bind(this, 'parametro')
});

Para más información sobre Prototype lo mejor es este manual de Sergio Pereira.

Delirios de un Informático :: Gestionado con WordPress :: Alojado en Bitacoras.com :: Licenciado bajo Creative Commons