1

我正在尝试使用 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。
谢谢

4

1 回答 1

0

我在 Internet Explorer 9 中遇到了类似的问题,我通过将时间戳附加到查询字符串来解决它:

 var url = 'check_num_of_invitations.php?username='+username+'&timestamp='+Date.now();
 req.open('GET', url);
于 2013-07-26T09:47:18.723 回答