如果我调用$.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();
}
答案 0 :(得分:1)
第一个可以工作,但是你也可以检查请求的readyState属性:如果它是4,它已经完成,所以不需要中止。
答案 1 :(得分:1)
你的权利这是有效的
if(vXMLHttpRequest)
{
vXMLHttpRequest.abort();
}