Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Frameworks JS (http://www.forosdelweb.com/f127/)
-   -   ajax con prototype y usando clase (http://www.forosdelweb.com/f127/ajax-con-prototype-usando-clase-482427/)

miketrix_esp 18/04/2007 01:41

ajax con prototype y usando clase
 
Tengo un problema. Tengo una clase Paginador que tiene un conjunto de metodos. El metodo paginar hace una llamada ajax y quiero que cuando haya devuelto la respuesta, ejecute un segundo metodo. Antes de usar clases hacia el mismo proceso con funciones y variables globales, y funcionaba pero ahora no se por que, no funciona. El codigo simplificado seria:

Código:

var Paginador = Class.create();
Paginador.prototype = {
       
        initialize: function()
        {
//... declarar propiedades...
},
paginar: function(pag,limit,idlistado) {
                if(!this.cargando)
                {
                        this.cargando = true;
var url = this.pathPaginador + "ajax/paginar.php";
                        var pars = "pag=" + pag + "&limit=" + limit;
                        var target = idlistado;
                        var myAjax = new Ajax.Updater(
                                target,
                                url,
                                {        method: 'get',
                                        parameters: pars,
                                        evalScripts: true,
                                        onComplete: this.paginarFin
                                });
},
paginarFin: function() {
                // hemos terminado de cargar el listado
                this.cargando = false;}}

Lo que me interesa es que cuando finalice la llamada ajax, vuelva a poner la variable cargando (propiedad de la clase) a false. Pero no me lo esta cambiando.

Utilizo la libreria prototype.js.

Alguna sugerencia?

miketrix_esp 18/04/2007 01:49

Re: ajax con prototype y usando clase
 
Otro apunte, si pongo

onComplete: this.paginarFin()

me funciona pero no es realmente correcto porque me he fijado que se ejecuta antes de finalizar la llamada ajax. Deberia esperar hasta que finalizara.

MaBoRaK 18/04/2007 12:53

Re: ajax con prototype y usando clase
 
loading..........

Pasa que con se está perdiendo tu instancia, ponlo asi.
var oThis=this;
var myAjax = new Ajax.Updater(
target,
url,
{ method: 'get',
parameters: pars,
evalScripts: true,
onComplete: function(){oThis.paginarFin();}
});

connection closed.


La zona horaria es GMT -6. Ahora son las 19:12.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.