0

我正在测试一个脚本以允许我的日历加载当前月份。但是,当我打开页面时,它只显示“处理中......”我不知道为什么

    <script language="JavaScript" type="text/javascript">
function initialCalendar(){
    var hr = new XMLHttpRequest();
    var url = "calendar_start.php";
    var currentTime = new Date();
    var month = currentTime.getMonth() + 1;
    var year = currentTime.getFullYear();
    showmonth = month;
    showyear = year;
    var vars = "showmonth="+showmonth+"&showyear="+showyear;
    hr.open("POST", url, true);
    hr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    hr.onreadystatechange = function() {
        if(hr.readyState == 4 && hr.status == 200) {
            var return_data = hr.responseText;
            document.getElementById("showCalender").innerHTML = return_data;
        }
    }
    hr.send(vars);
    document.getElementById("showCalendar").innerHTML = "processing...";
}
</script>

身体是:

<body onLoad="initialCalendar();">

<div id="showCalendar"></div>

</body>
4

1 回答 1

1

您在 onreadystatechange 调用中使用 e 拼写了 Calendar,除此之外它应该可以工作。

我建议将您的“处理”行移到您的 hr.send(vars) 语句上方,以避免出现竞争条件。

于 2013-04-12T00:01:14.603 回答