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 に答える