在中止先前的$ .ajax()调用之前,如何测试是否存在活动的XMLHttpRequest对象?

如果我调用
$.ajax()
方法并将XMLHttpRequest存储到变量
vXMLHttpRequest
中,在调用
abort
之前检查先前XMLHttpRequest是否存在的正确方法是什么?
var vXMLHttpRequest = $.ajax({
    type: "POST",
    url: "some.php",
    data: "name=John&location=Boston",
    success: function(msg){
       alert( "Data Saved: " + msg );
    }
});
我假设只有在有一个活动的先前XMLHttpRequest时,这是杀死请求的方法:
if(vXMLHttpRequest)
{
  vXMLHttpRequest.abort();
}
这是正确的还是有更好的语法?例如:
if(vXMLHttpRequest!=null)
{
  vXMLHttpRequest.abort();
}
    
已邀请:
你的权利是有效的
if(vXMLHttpRequest)
{
  vXMLHttpRequest.abort();
}
    
第一个将工作,但您也可以检查请求的readyState属性:如果它是4,它已经完成,所以不需要中止。     

要回复问题请先登录注册