基本上,一旦用戶在我的應用程序中離開網頁,我需要用AJAX調用PHP腳本,這會在網頁中插入一段時間到數據庫然後離開頁面。
等待AJAX請求完成是非常重要的,因爲我的應用程序中的網頁不能被用戶訪問,除非他們在前一頁上花了一定時間(比如說兩分鐘)。
這裏是我的jQuery代碼:
$(document).ready(function() {
var teid = TEID;
var startTime = new Date().getTime();
$(window).unload(function() {
var timeSpentMilliseconds = new Date().getTime() - startTime;
var t = timeSpentMilliseconds/1000/60;
$.ajax({
type: 'POST',
url: '/clientarea/utils/record-time',
data: 'teid=' + teid + '&t=' + t
});
});
});
我應該如何改變它,所以它會等待AJAX請求離開網頁之前結束?
編輯:
或者,它可能會更好(容易)只是讓AJAX請求重複每分鐘左右。那可能嗎?
嗯。謝謝。我更新了我的問題。只要讓AJX請求重複一遍就可以輕鬆一點。我會怎麼做? – 2010-06-29 07:06:19
我強烈建議避免這種情況,**特別**關於'卸載'。 – jAndy 2010-06-29 07:06:36
我發現總是有一個比'async:false'更好的解決方案,不管問題是什麼。 – 2015-02-11 22:31:23