2013-04-11 26 views
0

我測試的腳本,讓我的日曆加載當前月份。然而,當我打開它卡只顯示「處理......」的頁面我想不通爲什麼初學者的XMLHttpRequest停留在加工

<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> 
+0

嘗試jQuery的,比較容易的方式:-)這將是很難在第一,但值得 –

+0

是否'onreadystatechange'還回什麼? – ethrbunny

+0

第一個地方看是JavaScript控制檯的任何錯誤和'calendar_start.php'該文件是的任何跡象'POST'ed來。例如,你有任何的PHP日誌記錄? – andyb

回答

1

你拼寫日曆與在一封您onreadystatechange的電話,比它應該工作等。

我會建議將您的hr.send上方的「處理」行商(VAR)語句,以避免出現競爭狀況,以及。