簡體   English   中英

Ajax響應始終在第一次調用后返回2

[英]Ajax response always returns 2 after first call

我正在嘗試使用Ajax從數據庫中獲取更新的num。
主要功能是:

function checkInvitations() {
    if (username ="-1") {
        username = document.getElementById("username").value;
    }
    req.open('GET', 'check_num_of_invitations.php?username='+username);
    req.onreadystatechange = handleNumOfInvitationsResponse;
    req.send(null);
}

該函數從HTML文件中調用...
調用的函數( handleNumOfInvitationsResponse ):

function handleNumOfInvitationsResponse() {
if(req.readyState == 4) {
    // update div in HTML
} else {
    // update div in HTML
}
setTimeout(function(){checkInvitations();}, 5000);

}

注意對checkInvitations的遞歸調用。

第一次嘗試時,響應返回4,一切正常,從那里返回2。
謝謝

我在Internet Explorer 9中有一個類似的問題,我通過在查詢字符串后附加時間戳來解決了這個問題:

 var url = 'check_num_of_invitations.php?username='+username+'&timestamp='+Date.now();
 req.open('GET', url);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM