+ -
当前位置:首页 → 问答吧 → 关于status的返回问题

关于status的返回问题

时间:2006-07-26

来源:互联网

这个例子是在<AJAX基础教程>中的,可是我实现不了
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 strict//EN"
"http://www.w3.org/TR/xhtml/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Using</title>
<script text="text/javascript">
var xmlHttp;
function creatXMLHttpRequest(){
        if(window.ActiveXObject){
                xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
        }       
        else if(window.XMLHttpRequest){
                xmlHttp = new XMLHttpRequest();
        }
}
function startRequest(requestList){
        requestType = requestList;
        creatXMLHttpRequest();
        xmlHttp.onreadystatechange = handlestatechange;
        xmlHttp.open("GET", "1.xml", true);
        xmlHttp.send(null);
}
function handlestatechange(){
        if(xmlHttp.readyState == 4){
                if(xmlHttp.status == 200){
                        if(requestType == "north")
                                ListNorthStates();
                }       
        }
}
function ListNorthStates(){
        var xmlDoc = xmlHttp.responseXML;
        var northNode = xmlDoc.getElementsByTagName('north')[0];
        var northStates = northNode.getElementsByTagName("state");
        outputList("North States", northStates);
}
function outputList(title, states) {
    var out = title;
    var currentState = null;
    for(var i = 0; i < states.length; i++) {
        currentState = states[i];
        out = out + "\n- " + currentState.childNodes[0].nodeValue;
    }
   
    alert(out);
}
</script>
</head>
<body>
<form action="#">
        <input type="button" value="List North States" onclick="startRequest('north')">
</form>
</body>
</html>

1.XML如下
<?xml version="1.0" encoding="GB2312"?>
<states>
    <north>
        <state>Minnesota</state>
        <state>Iowa</state>
        <state>North Dakota</state>
    </north>
    <south>
        <state>Texas</state>
        <state>Oklahoma</state>
        <state>Louisiana</state>
    </south>
    <east>
        <state>New York</state>
        <state>North Carolina</state>
        <state>Massachusetts</state>
    </east>
    <west>
        <state>California</state>
        <state>Oregon</state>
        <state>Nevada</state>
    </west>
</states>
现在就是点BUTTON没有反应
但是我要把xmlHttp.status == 200改为xmlHttp.status != 200的话可以,但是会显示var northStates = northNode.getElementsByTagName("state");有错误,说"没有返回值或NULL为空",不知道为何

作者: zabcd117   发布时间: 2006-07-26