2016-02-05 123 views
0

我有一個寫入對象的ajax請求,我需要編寫一個取消這個特定請求的函數。我已經看過中止方法,但不知道如何使它以這種方式工作。取消對象內的ajax請求

getItems: function(categoryID, format, numberOfResults, types, sortBy, searchString){ 
    var url = host+"getItems?categoryID="+categoryID+"&format="+format+"&numberOfResults="+numberOfResults+"&types="+types+"&sortBy="+sortBy+'&fileName='+searchString; 
    return $.ajax({ 
     type:"get", 
     dataType:"html", 
     url: url, 
     success:function(data){ 
      resItems = data; 
     }, 
     error: function(data){ 
      console.log(data); 
     } 
    }); 
}, 

我的問題是這樣的函數被調用時,某些元素是所謂的,我需要的,如果用戶點擊快速連續兩個元素開始在下單前取消此請求。

頁面有多個ajax請求,所以我不能做一個毯子取消所有,但需要具體取消這一個。

用於該目的的結構是這樣的:

var items: { 
    getItems: function(){ 
    }, 
    getItemInfo: function(){ 
    } 
} 

等。

我想要做的是根據請求的URL定位一個ajax請求並取消它,這可能來自外部函數嗎?

回答

1

因爲getItems將返回了XMLHttpRequest應該是這麼簡單

resp = items.getItems(params) 
resp.abort() 
+0

這並沒有爲我工作相當,但我發現周圍取消Ajax請求以外的工作。謝謝你的時間。 – ThePagan