我需要启动几个ajax请求。 出于某些原因,我想要同步这个。也就是说,在启动ajax请求之前,我必须知道先前的请求是否已经完成。
原型的Updater对象的'asynchronous:false'属性似乎不起作用。
// A loop to launch one after each other the requests uploading elements of chunk[]
for (i = 0; i < chunks.length; i++) {
new Ajax.Updater( 'myId',
AJAX_SERVER + 'serviceName=' + sServiceName + sServiceParams,
{
evalScripts: true,
method: 'get',
asynchronous : false;
} );
}
答案 0 :(得分:4)
根据Prototype docs,asynchronous
选项 -
确定XMLHttpRequest是否为 是否异步使用。以来 同步使用是相当的 令人不安,通常味道不好,你 应该避免改变这一点。严重。
您可以向服务器发出异步ajax请求,它将调用onSuccess
/ onComplete
/ onFailure
处理程序的回调函数集。在该回调中,您可以调用下一个方法,依此类推。
答案 1 :(得分:0)
由第一个AJAX请求onComplete
or onSuccess
callbacks调用它。