我正在尝试为一些 xml 做一个 document.write 以在 html 中显示。请耐心等待,因为我是 Javascript 的初学者。这是我到目前为止的代码:
<script>
function loadXMLDoc()
{
if (window.XMLHttpRequest)
{
xhttp=new XMLHttpRequest();
}
else
{
xhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xhttp.open("GET","Data/xmlfile.xml",false);
xhttp.send();
return xhttp.responseXML;
}
</script>
<body>
<script>
xmlDoc=loadXMLDoc("Data/xmlfile.xmll");
var x=xmlDoc.getElementsByTagName("col");
[0].childNodes[0].nodeValue + "<br>");
document.write(xmlDoc.getElementsByName("Rep")[1].childNodes[0].nodeValue + "<br>");
document.write(xmlDoc.getElementsByName("Rep")[2].childNodes[0].nodeValue + "<br>");
document.write(xmlDoc.getElementsByName("Rep")[3].childNodes[0].nodeValue + "<br>");
document.write(xmlDoc.getElementsByName("Rep")[4].childNodes[0].nodeValue + "<br>");
document.write(xmlDoc.getElementsByName("Rep")[5].childNodes[0].nodeValue + "<br>");
document.write(xmlDoc.getElementsByName("Rep")[6].childNodes[0].nodeValue + "<br>");
</script>
<div><span class="reps"></span></div>
我也试过:
//r = document.getElementById("reps");
//var inh=document.getElementById("reps").innerHTML;
//r.innerHTML = document.write(xmlDoc.getElementsByName("Rep")
document.getElementById("reps").innerHTML=xmlDoc.getElementsByName("Rep")[7].childNodes[0].nodeValue;
然后我尝试了:
r.innerHTML = document.write(xmlDoc.getElementsByName("Rep")[0].childNodes[0].nodeValue + "<br>");
在研究了一些网站后,它提到 XML 不能与 document.write 一起使用。这是真的?为什么它在 Dreamweaver live 中有效,但在我在服务器上运行时无效?
我怎样才能让它工作?
最终,我想从 XML 中绘制每个节点值,并将其作为单独的超链接显示在 div 中。我已经在 XML 中有超链接,并这样编写了 javascript:
document.write("9 - " + "<a href='" + xmlDoc.getElementsByName("RepWeb")[8].childNodes[0].nodeValue + "'>" + xmlDoc.getElementsByName("Rep")[8].childNodes[0].nodeValue + "</a>" + "<br>");
我究竟做错了什么?