一部のxmlをhtmlに表示するためにdocument.writeを実行しようとしています。私は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>");
いくつかのサイトを調べたところ、document.write で XML を使用できないことが記載されています。これは本当ですか?Dreamweaver ライブでは機能するのに、サーバー上で実行すると機能しないのはなぜですか?
どうすればこれを機能させることができますか?
最終的に、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>");
私は何を間違っていますか?