在我的網站上,我在鼠標懸停和鼠標懸停事件設置在HTML表格上。這些事件觸發ajax請求,並執行某些操作等。但是,我希望能夠不觸發第二個請求,如果已經運行。那麼,有沒有發現這些請求,因此避免了一秒鐘。順便說一句,我使用jQuery $.ajax()
如果它有幫助。檢測AJAX請求
在此先感謝
克里斯
在我的網站上,我在鼠標懸停和鼠標懸停事件設置在HTML表格上。這些事件觸發ajax請求,並執行某些操作等。但是,我希望能夠不觸發第二個請求,如果已經運行。那麼,有沒有發現這些請求,因此避免了一秒鐘。順便說一句,我使用jQuery $.ajax()
如果它有幫助。檢測AJAX請求
在此先感謝
克里斯
我想嘗試的東西一樣簡單:
var requestMade = false;
function yourAjaxFunction(){
if(!requestMade)
{
requestmade = true;
$.ajax({
url: "page",
success: function(){
requestMade = false;
}
error: function(){
requestMade = false;
}
});
}
}
您可以使用success:
和error:
設置改變變量回false。
我從來沒有使用error
所以你可能不得不包含其他一些東西,但這是一般的想法。
對於這個假設我會使用ajaxStart()
和ajaxStop()
這將改變特定變量ajaxRunning
可能在發送請求之前進行檢查(直接也許在ajaxStart()
?)
當第一個ajax即將觸發時,將全局或本地靜態變量設置爲true,而不是在觸發第二個之前添加;)在完成一個請求之後,將此變量設置爲false