由于发送的ajax请求是异步的,第一次请求还没返回回来,又发送了第二次请求,而发送请求页面没有刷新操作,即局部刷新,这就导致一个问题,比如请求返回十条数据,那么多次点击,页面本应该返回十条,但是却显示二十条,或者三十条。可以通过以下处理:
var error_ajax_a ;
$.ajax({
url :url,
data :param,
type :"POST",
dataType :"json",
beforeSend:function(request){
error_ajax_a = request;
},
success:function(data1,aa,request){
if(error_ajax_a!=request){
return;
}
}
});
思路就是比较两次request对象是否为一个对象,不是的话就直接return。