首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Ajax >

有关问题status=0很蛋疼啊

2013-08-16 
问题status0很蛋疼啊~!!!本帖最后由 showbo 于 2013-08-15 09:18:21 编辑新手学习javascript好容易行进到

问题status=0很蛋疼啊~!!!
本帖最后由 showbo 于 2013-08-15 09:18:21 编辑 新手学习javascript好容易行进到Ajax结果就来了这个

window.onload = initAll;
var xhr = false;

function initAll() {
document.getElementById("makeTextRequest").onclick = getNewFile;
document.getElementById("makeXMLRequest").onclick = getNewFile;
}

function getNewFile() {
makeRequest(this.href);
return false;
}

function makeRequest(url) {
if (window.XMLHttpRequest) {
xhr = new XMLHttpRequest();
}
else {
if (window.ActiveXObject) {
try {
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e) { }
}
}

if (xhr) {
xhr.onreadystatechange = showContents;
xhr.open("GET", url, true);
xhr.send(null);
}
else {
document.getElementById("updateArea").innerHTML = "Sorry, but I couldn't create an XMLHttpRequest";
}
}

function showContents() {
if (xhr.readyState == 4) {
if (xhr.status == 200) {
if (xhr.responseXML && xhr.responseXML.childNodes.length > 0) {
var outMsg = getText(xhr.responseXML.getElementsByTagName("choices")[0]);
}
else {
var outMsg = xhr.responseText;
}
}
else {
var outMsg = "There was a problem with the request " + xhr.status;
}这里,老是要跳转到这里。
document.getElementById("updateArea").innerHTML = outMsg;
alert("sadasdasd");我弄了个alert才能看到他调到这报告status=0.然后整个页面就变成我请求文本的那个页面,是在搞不懂求高手解答。
}

function getText(inVal) {
if (inVal.textContent) {
return inVal.textContent;
}
return inVal.text;
}
}
JavaScript XMLHttpRequest Ajax
[解决办法]
本地测试,未发布的站点请求成功status就是0,要发布网站通过http或者https访问才是200状态,要增加status=0判断,但是为0的时候IE下的xml生成不了DOM树,参考这里:http://bbs.csdn.net/topics/310120750




function showContents() {
    if (xhr.readyState == 4) {
        if (xhr.status == 200
[解决办法]
0==xhr.status)
 {
            if (xhr.responseXML && xhr.responseXML.childNodes.length > 0) {
                var outMsg = getText(xhr.responseXML.getElementsByTagName("choices")[0]);
            }
            else {
                var outMsg = xhr.responseText;
            }

              document.getElementById("updateArea").innerHTML = outMsg;
        }
        else {
            var outMsg = "There was a problem with the request " + xhr.status;
        } 
       ‘’ document.getElementById("updateArea").innerHTML = outMsg;
        alert("sadasdasd"); 
    }
     
    function getText(inVal) {
        if (inVal.textContent) {
            return inVal.textContent;
        }
        return inVal.text;
    }
}

热点排行