在一个定时器里频繁发ajax请求,最好设置一个全局变量,当请求还在发出时,不再发出请求。
var bMadeRquest = false;//定义全局标志
if(bMadeRquest) return;//如果前一个请求没有返回则不再请求
new Ajax.Request(url,{
method : 'get',
parameters : pars,
onCreate: function(){
bMadeRquest = true;//请求开始时设置为true
},
onComplete: function(originalRequest){
//alert(originalRequest.responseText);
bMadeRquest = false;//请求结束后还原
},
onException:function(){
bMadeRquest = false;
}
});