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

不能正确读XML文件,请问

2012-04-11 
不能正确读XML文件,请教HTML code!--test.html--htmlheadscript typetext/javascriptvar xmlht

不能正确读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",
"MSXML2.XMLHTTP.9.0", 


"MSXML2.XMLHTTP.5.0",
"MSXML2.XMLHTTP.4.0",
"MSXML2.XMLHTTP.3.0",
"MSXML2.XMLHTTP",
"Microsoft.XMLHTTP");
for (var i=0; i<XmlHttpVersions.length && !xmlHttp; i++)
{
try
{
xmlHttp = new ActiveXObject(XmlHttpVersions[i]);
}
catch (e) {}
}
}
if (!xmlHttp)
alert("Error creating the XMLHttpRequest object.");
else
XMLHttpReq=xmlHttp;

}


function sendRequest(url){
createXMLHttpRequest();
XMLHttpReq.open("Get", url, true);
XMLHttpReq.onreadystatechange =function(){
processResponse();
}
XMLHttpReq.send(null);
}
function processResponse() {
if (XMLHttpReq.readyState == 4) { 
if (XMLHttpReq.status == 200) {
updateServer();
} else { 
alert("錯誤");
}
}
}
 
function updateServer() {

var HTML='';
var num='';
var str='';
var xml = XMLHttpReq.responseXML;
var res=xml.getElementsByTagName("res");

var temp;
HTML+='<table width="90%" align="right" class="TablePanel" border="0">'+
'<tr>';

var areaId='';
for(i=0;i<res.length;){
var stud=res[i];
areaId = stud.getElementsByTagName("areaId")[0].firstChild.data; 
var billNum = stud.getElementsByTagName("billNum")[0].firstChild.data; 
var ming = stud.getElementsByTagName("ming")[0].firstChild.data; 
var rname = stud.getElementsByTagName("rname")[0].firstChild.data; 
var count = stud.getElementsByTagName("count")[0].firstChild.data; 
HTML+='<td><input type="checkbox" name="billno" onclick="check(this);" id="billno" value="'+billNum+'" /></td>';
HTML+='<td><font style="font-size:14px;">'+ billNum +'</font></td>';
HTML+='<td align="left"><font style="font-size:14px;">'+ count+'&nbsp;&nbsp;&nbsp;&nbsp;</font></td>';
HTML+='<td colspan="4"><font style="font-size:14px;">'+ rname;
HTML+= ming +'</font></td>';
HTML+='</tr><tr>';
i++;
}

热点排行