test1.xml
<?xml version='1.0' encoding="UTF-8" ?> <lowkey> <lzq> <l>I am lowkey</l> <l>I am not lowkey</l> <l>I think I am lowkey</l> </lzq> <gst> <g>I am gosipt</g> <g>I am not gosipt</g> <g>I think I am gosipt</g> </gst> </lowkey>test1.html
<html> <head> <title>Have a test</title> <script type="text/javascript"> var xmlHttp; function createXMLHttpRequest() { if(window.ActiveXObject) { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); } else if(window.XMLHttpRequest) { xmlHttp = new XMLHttpRequest(); } } function startRequest() { createXMLHttpRequest(); xmlHttp.onreadystatechange = handleStateChange; //注册事件执行方法,只能是方法你不可能注册其他的东西,所以不用()。把handleStateChange方法注册到xmlHttp的onreadystatechange的事件当中。 xmlHttp.open("GET", "test1.xml", true); xmlHttp.send(null); } function handleStateChange() { if(xmlHttp.readyState==4) { if(xmlHttp.status==200) { listContents(); } } } function listContents() { var xmlDoc = xmlHttp.responseXML; var lContent = xmlDoc.getElementsByTagName("g"); var sumContents = ""; for(var i=0; i<lContent.length; i++) { sumContents = sumContents + " " + lContent[i].childNodes[0].nodeValue; } document.getElementById("content").innerHTML = "<p>" + sumContents +"</p>"; } </script> </head> <body> <form name="testForm" action="#"> <input type="button" id="testButton" value="lowkey" οnclick="startRequest();" /> </form> <div id="content"></div> </body> </html>