大荔工厂最新招聘信息:简单的responseXML问题!急急急!

来源:百度文库 编辑:高考问答 时间:2024/05/01 14:32:34
源文件:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<HTML xmlns="http://www.w3.org/1999/xhtml">
<HEAD>
<TITLE> Parsing XML Responses with the W3C DOM </TITLE>
<script type="text/javascript">
var xmlHttp;
var requestType = "";

function createXMLHttpRequest(){
if (window.ActiveXObject){
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
else if (window.XMLHttpRequest){
xmlHttp = new XMLHttpRequest();
}
}

function startRequest(requestedList){
requestType = requestedList;
createXMLHttpRequest();
xmlHttp.onreadystatechange = handleStateChange;
xmlHttp.open("GET","parseXML.xml",true);
xmlHttp.setRequestHeader("Content-Type","text/xml");
xmlHttp.send(null);
}

function handleStateChange(){
if(xmlHttp.readyState==4){

if(requestType == "north"){
listNorthStates();
}
else if(requestType == "all"){
listAllStates();
alert(xmlHttp.responseXML.documentElement);
}

}
}

function listNorthStates(){
var xmlDoc = xmlHttp.responseXML;
var northNode = xmlDoc.getElementsByTagName("north")[0];
alert(northNode);
var northStates = northNode.getElementsByTagName("state");
outputList("Norther States",northStates);
}

function listAllStates(){
var xmlDoc = xmlHttp.responseXML;
var allStates = xmlDoc.getElementsByTagName("state");
outputList("All States in Document",allStates);
}

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>
<h1>Process XML Document of U.S.States</h1>
<br/><br/>
<form action="#">
<input type="button" value="View All Listed States" onclick="startRequest('all');"/>
<br/><br/>
<input type="button" value="View All Listed Northen States" onclick="startRequest('north');"/>
</form>
</BODY>
</HTML>
XML这样写的:
<?xml version="1.0" encoding="UTF-8" ?>
<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>
为什么我用 xmlHttp.responseXML取不到任何东西?希望高手赐教啊!