javascript 傳遞xmlHttpRequest參數問題?
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.οnlοad=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){//Uncaught TypeError: Cannot read property 'status' of undefined
//...
}
}
我把xmlHttp對象作為參數傳遞到load函數,但是在load裡面使用xmlHttp對象的時候卻提示錯誤,看起來好像是xmlHttp對象不存在,請問是什麼原因呢?
------解決思路----------------------
不需要傳遞參數。
解決方1,
var xmlHttp 放外面,xmlHttp.onreadystatechange=load;
解決方法2:
xmlHttp.onreadystatechange=function(){
if (xmlHttp.readyState == 4 && xmlHttp.status == 200){//Uncaught TypeError: Cannot read property 'status' of undefined
//...
}
};
解決方法3:
window.οnlοad=function (){
//建立,連接配接,發送請求,接收資料
var xmlHttp=createXMLHttpRequest();
xmlHttp.open("GET","/ajax/PServlet",true);
xmlHttp.send(null);
xmlHttp.onreadystatechange=load;
function load(){
}
};