次の XML ファイルがあります。
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!-- Edited by XMLSpy® -->
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
そして、次の Javascript/HTML を使用します。
<html>
<body>
<h1>W3Schools Internal Note</h1>
<div>
<b>To:</b>
<span id="to"></span>
<br />
<b>From:</b>
<span id="from"></span>
<br />
<b>Message:</b>
<span id="message"></span>
</div>
<script type="text/javascript">
if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
} else { // code for IE6, IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET", "note.xml", false);
xmlhttp.send();
xmlDoc = xmlhttp.responseXML;
document.getElementById("to").innerHTML = xmlDoc.getElementsByTagName("to")[0].childNodes[0].nodeValue;
document.getElementById("from").innerHTML = xmlDoc.getElementsByTagName("from")[0].childNodes[0].nodeValue;
document.getElementById("message").innerHTML = xmlDoc.getElementsByTagName("body")[0].childNodes[0].nodeValue;
</script>
</body>
</html>
これは正常に機能していますが、XML ファイル内の値の 1 つに次のような値がない場合<from></from>
、残りの値はデータを返しません。
ノードに値がなくても、これを検出して先に進む方法はありますか?