日期:2014-05-19  浏览次数:20842 次

不能正确读XML文件,请教
HTML code

<!--test.html-->
<html>
<head>

<script type="text/javascript">
var xmlhttp;

function loadXMLDoc(url)
{
    xmlhttp=null;
    if (window.XMLHttpRequest)
      {// code for IE7, Firefox, Mozilla, etc.
          xmlhttp=new XMLHttpRequest();
      }
    else if (window.ActiveXObject)
      {// code for IE5, IE6
          xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    if (xmlhttp!=null)
      {
         xmlhttp.onreadystatechange=onResponse;
          xmlhttp.open("GET",url,true);
          xmlhttp.send(null);
      }
    else
      {
          alert("Your browser does not support XMLHTTP.");
      }
}

function onResponse()
{
    if(xmlhttp.readyState!=4) return;
    if(xmlhttp.status!=200)
      {
          alert("Problem retrieving XML data");
          return;
      }

    txt="<table border='1'>";
    x=xmlhttp.responseXML.documentElement.getElementsByTagName("CD");
    for (i=0;i<x.length;i++)
      {
          txt=txt + "<tr>";
          xx=x[i].getElementsByTagName("TITLE");
            {
                try
                  {
                      txt=txt + "<td>" + xx[0].firstChild.nodeValue + "</td>";
                  }
                catch (er)
                  {
                      txt=txt + "<td> </td>";
                  }
            }
          xx=x[i].getElementsByTagName("ARTIST");
            {
                try
                  {
                      txt=txt + "<td>" + xx[0].firstChild.nodeValue + "</td>";
                  }
                catch (er)
                  {
                      txt=txt + "<td> </td>";
                  }
            }
          txt=txt + "</tr>";
      }
    txt=txt + "</table>";
    document.getElementById('copy').innerHTML=txt;
}

</script>
</head>

<body>
    <div id="copy">
        <button onclick="loadXMLDoc('cd_catalog.xml')">Get CD info</button>
<!--明明在这载入了,为什么读不出来数据?-->
    </div>
</body>

</html>

XML code

<!--cd_catalog.xml-->
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Edited with XML Spy v2007 (http://www.altova.com) -->
<CATALOG>
    <CD>
        <TITLE>Empire Burlesque</TITLE>
        <ARTIST>Bob Dylan</ARTIST>
        <COUNTRY>USA</COUNTRY>
        <COMPANY>Columbia</COMPANY>
        <PRICE>10.90</PRICE>
        <YEAR>1985</YEAR>
    </CD>
    <CD>
        <TITLE>Hide your heart</TITLE>
        <ARTIST>Bonnie Tyler</ARTIST>
        <COUNTRY>UK</COUNTRY>
        <COMPANY>CBS Records</COMPANY>
        <PRICE>9.90</PRICE>
        <YEAR>1988</YEAR>
    </CD>
</CATALOG>


test.html文件会生成一个按钮,预期是点击按钮,然后生成一个表格,但是现在生成不了,为什么?

------解决方案--------------------
按F12,打开IE的开发人员工具,然后查看脚本是否出错误了。
------解决方案--------------------
function createXMLHttpRequest() {
var xmlHttp;
try
{
xmlHttp = new XMLHttpRequest();
 
}
catch(e)
{
var XmlHttpVersions = new Array("MSXML2.XMLHTTP.6.0",
"MSXML2.XMLHTTP.7.0",
"MSXML2.XMLHTTP.8.0&qu