Thanks. I'll have a look at this.

Eifion


On 30 Ion 2006, at 12:27, Irfan, Ghouseuddin Syed wrote:

I have written this small script for queuing ajax calls. Hope this helps.

//-------------------------------------------------------------------- -
var AjaxQueue = {
        batchSize: 1,
        urlQueue: [],
        elementsQueue: [],
        optionsQueue: [],
        setBatchSize: function(bSize){
                this.batchSize = bSize;
        },
        push: function(url, options, elementID){
                this.urlQueue.push(url);
                this.optionsQueue.push(options);
                if(elementID!=null){
                        this.elementsQueue.push(elementID);
                } else {
                        this.elementsQueue.push("NOTSPECIFIED");
                }

                this.processNext();
        },
        processNext: function() {
                if(Ajax.activeRequestCount < AjaxQueue.batchSize)
                {       
                        if(AjaxQueue.elementsQueue.first()=="NOTSPECIFIED") {
new Ajax.Request(AjaxQueue.urlQueue.shift(), AjaxQueue.optionsQueue.shift());
                                var junk = AjaxQueue.elementsQueue.shift();
                        } else {
new Ajax.Updater(AjaxQueue.elementsQueue.shift(), AjaxQueue.urlQueue.shift(), AjaxQueue.optionsQueue.shift());
                        }
                
                }
        }
};
Ajax.Responders.register({
  onComplete: AjaxQueue.processNext
});

//-------------------------------------------------------------------- ----

All the ajax calls should be pushed into the queue. You can set a batch size ie the no.of simultaneous ajax calls to be processed.

Usage:
Ex: AjaxQueue.setBatchSize(2);




-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] Behalf Of Eifion
Sent: Monday, January 30, 2006 5:39 PM
To: [email protected]
Subject: [Rails-spinoffs] Multiple ajax calls


This is slightly OT for which I apologise in advance, but I was
wondering if anyone here has had any problems when making multiple
ajax calls at the same time. I'm working on a large Intranet
application which makes heavy use of ajax calls and the bugs are
flying in from the testers that if they repeatedly click on a link
that makes an ajax call then Internet Explorer can fall over.
Obviously I'm making fixes to get around this by disabling the links
while the calls are made to stop this but it seems that the way
XMLHTTP works in IE and Mozilla is quite different. If a lot of calls
are made with IE it seems to try to make them straight away which can
cause problems. FireFox on the other hand seems to wait and make the
calls sequentially which can take some time, but at least works.

I was wondering if anyone else here had noticed anything similar and,
if so, if you'd come up with anyway of stopping IE trying to make too
many calls at once.

Eifion
_______________________________________________
Rails-spinoffs mailing list
[email protected]
http://lists.rubyonrails.org/mailman/listinfo/rails-spinoffs
_______________________________________________
Rails-spinoffs mailing list
[email protected]
http://lists.rubyonrails.org/mailman/listinfo/rails-spinoffs

_______________________________________________
Rails-spinoffs mailing list
[email protected]
http://lists.rubyonrails.org/mailman/listinfo/rails-spinoffs

Reply via email to