function createXMLHttpRequest() {
try {
return new XMLHttpRequest();
} catch(e) {
try {
return new ActiveXObject("Msxml2.XMLHTTP");
} catch(e) {
try {
return new ActiveXObject("Microsoft.XMLHTTP");
} catch(e) {
throw e;
}
}
}
}
window.onload=function (){
//創建,連接,發送請求,接收數據
var xmlHttp=createXMLHttpRequest();
xmlHttp.open("GET","/ajax/PServlet",true);
xmlHttp.send(null);
xmlHttp.onreadystatechange=load(xmlHttp);
};
function load(xmlHttp){
if (xmlHttp.readyState == 4 && xmlHttp.status == 200){
//...
}
}
我在load函數裡面使用xmlHttp對象時發現不可以用,請問有什麼解決方法呢?
onreadystatechange應該賦值的是函數名也就是xmlHttp.onreadystatechange=load
把xmlHttp定義成全局變量
var xmlHttp;
window.onload=function (){
//創建,連接,發送請求,接收數據
xmlHttp=createXMLHttpRequest();
xmlHttp.open("GET","/ajax/PServlet",true);
xmlHttp.send(null);
xmlHttp.onreadystatechange=load;
};
function load(){
if (xmlHttp.readyState == 4 && xmlHttp.status == 200){
//...
}
}