相反:
xmlHttpRequest.onreadystatechange=function(){
if(xmlHttpRequest.readyState == 4 && xmlHttpRequest.status == 200){
alert("Call took " + new Date().getTime() - t1 + " milliseconds");
document.getElementById("info").innerHTML = xmlHttpRequest.responseText;
}
}
xmlHttpRequest.open("GET", "showStopsInfoPopup.do?stop="+stop, true);
xmlHttpRequest.send();
試試這個:
xmlHttpRequest.open("GET", "showStopsInfoPopup.do?stop="+stop, true);
xmlHttpRequest.onreadystatechange=function(){
if(xmlHttpRequest.readyState == 4 && xmlHttpRequest.status == 200){
alert("Call took " + new Date().getTime() - t1 + " milliseconds");
document.getElementById("info").innerHTML = xmlHttpRequest.responseText;
}
}
xmlHttpRequest.send(null);
修復新日期
在你的代碼中缺少括號(記住分開Mathematics
,Strings
)。嘗試:
xmlHttpRequest.open("GET", "showStopsInfoPopup.do?stop="+stop, true);
xmlHttpRequest.onreadystatechange=function(){
if(xmlHttpRequest.readyState == 4 && xmlHttpRequest.status == 200){
alert("Call took " + (new Date().getTime() - t1) + " milliseconds");
document.getElementById("info").innerHTML = xmlHttpRequest.responseText;
}
}
xmlHttpRequest.send(null);
測試 Ajax請求:
<div id="info"></div>
<script>var xhr, t1;
if(window.ActiveXObject){
try { xhr=new ActiveXObject("Msxml2.XMLHTTP"); }catch(e){
try { xhr=new ActiveXObject("Microsoft.XMLHTTP"); }catch(e){}
}
} else if(window.XMLHttpRequest){
xhr=new XMLHttpRequest();
}
xhr.open("GET", "teste.php", true);
t1 = new Date().getTime();//I start the timer that point to prevent the previous functions affect the end result
xhr.onreadystatechange=function(){
if(xhr.readyState == 4 && xhr.status == 200){
document.getElementById("info").innerHTML = "Call took " + (new Date().getTime() - t1) + " milliseconds";
}
}
xhr.send(null);
</script>
PHP(泰斯特。PHP):
<?php
sleep(5);
echo 'ok';
?>
結果:
IE8:5004毫秒
Chorme:5005毫秒
火狐:5014毫秒
IE7:5023毫秒
IE6:5053毫秒
試驗後,得出結論認爲,或許還有對服務器端的側面,更確切地說在你的PHP。
爲什麼你使用jQuery標籤,如果你不使用任何jQuery代碼?如果您使用jQuery,只需使用['.load'](http://api.jquery.com/load/)方法。 – Blazemonger
我道歉。我對ajax比較陌生。所以我認爲有人會知道jquery也會知道這個問題。當我搜索這個問題時,似乎很多有類似問題的人都在使用jQuery。 – Susie
延遲可能實際上是由於innerHTML,而不是ajax請求。我建議你分開計時。 – Christophe