如果一个ajax请求过长,你可能会有取消之前发起的一次请求的需要。这里介绍jquery中如何实现。其实jquery发起一个ajax请求后会返回一个jqXHR对象,你随后可对该对象进行操作,包括abort中断操作。示例代码:
var r = $.ajax(
url:'...',
success:function(data){},
error:function(data,error){console.log(error);},
complete:function(){r=null;}
);
setTimeout(function(){
if(r&&r.readystate!=4){
r.abort();
}
},50);
取消成功的话,error函数会被触发,打印error信息