ajax获取不到对象

function loadXMLDoc(fileName){
    var xmlhttp;
    if(window.XMLHttpRequest){
        xmlhttp = new XMLHttpRequest();
    }
    xmlhttp.onreadystatechange = function(){
        if(xmlhttp.readyState == 4 && xmlhttp.status == 200){
            return xmlhttp.responseXML;
        }
    }
    xmlhttp.open("GET", fileName, true);
    xmlhttp.send();
}
window.onload = function(){
    var xmlDoc = loadXMLDoc("./note.xml");
    alert(xmlDoc);
}


返回的xmlDoc是undefined,意思是文件读取失败了?文件路径是对的,控制台也没报错,请问问题出在哪?

慕先生4543078
浏览 1328回答 3
3回答

qq_青枣工作室_0

这是异步调用的。var xmlDoc = loadXMLDoc("./note.xml"); 这里是得不到返回结果的。要在xmlhttp.onreadystatechange = function() 里面得到返回结果。由于是异步调用的,你这里return xmlhttp.responseXML; 是没用的,应该直接alert(xmlhttp.responseXML);

田心枫

这种是以前老的ajax的写法吧。试试新的写法  简单明了
打开App,查看更多内容
随时随地看视频慕课网APP