我无法弄清楚如何访问内部嵌套标签之间的数据。当我运行这个JavaScript,我看到的只是“空”。xml dom解析
这里是我的一个名为 “bboard.xml” xml文件看起来像:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Designed by Someone -->
<bulletinboard>
<article>
<title lang="en"><h2>eeeeeeeeegg #1</h2></title>
<detail><span class="detail">aaaaapple</span><a href="../data/csr.html#artcl1"> ...more </a></detail>
<date>12/09/09</date>
</article>
</bulletinboard>
这里被命名为 “loadxmldoc.js” 的JavaScript:
function loadXMLDoc(dname)
{
try //Internet Explorer
{
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
}
catch(e)
{
try //Firefox, Mozilla, Opera, etc.
{
xmlDoc=document.implementation.createDocument("","",null);
}
catch(e) {alert(e.message)}
}
try
{
xmlDoc.async=false;
xmlDoc.load(dname);
return(xmlDoc);
}
catch(e) {alert(e.message)}
return(null);
}
最后,这里是我想要显示javascript结果的实际HTML页面。 它被称为“javdemo.html”:
<html>
<head>
<script type="text/javascript" src="loadxmldoc.js">
</script>
</head>
<body>
<div>
<script type="text/javascript">
xmlDoc=loadXMLDoc("bboard.xml");
var x=xmlDoc.getElementsByTagName("title");
var y=xmlDoc.getElementsByTagName("detail");
var z=xmlDoc.getElementsByTagName("date");
document.write("<h4>"+"A Live Bulletin Board"+"</h4>");
for (i=0;i<x.length;i++)
{
document.write("<h1>"+x[i].childNodes[0].nodeValue+"</h1>");
document.write(y[i].childNodes[0].nodeValue);
document.write(z[i].childNodes[0].nodeValue);
document.write("<p>"+" "+"</p>");
// document.write("</div>")
}
</script>
</div>
</body>
</html>
这可能不会显示在浏览器中的全部代码。顺便说一下,你如何在堆栈溢出中转义html标签?
准确的输出是什么?是否'
eeeeeeeeegg#1
aaaaapple12/09/09'? – 2009-12-10 01:21:48是的。渲染时输出应该是eeeeeeeeeegg和aaaaaple。 – megatr0n 2009-12-10 01:39:29