nodeValueプロパティはノードのテキスト値を取得するために使用されます。
getAttribute()メソッドは、属性の値を返します。
要素の値を取得します。
DOMでは、すべてがノードです。 要素ノードはテキスト値を持っていません。
要素ノードのテキスト値は、子ノードに格納されています。 このノードは、テキストノードと呼ばれます。
要素のテキスト値を取得するには、要素のテキスト・ノードの値を取得する必要があります。
getElementsByTagNameの方法
getElementsByTagName()メソッドは、彼らがソース文書に現れるのと同じ順序で、指定したタグ名で、 すべての要素のノードリストを返します。
「仮定のBooks.xmlは 「XMLDOCにロードされています。
このコードは、最初の取得<title>要素を:
var x = xmlDoc.getElementsByTagName("title")[0];
ChildNodesプロパティ
ChildNodesプロパティは、 要素の子ノードのリストを返します。
次のコードは、最初のテキストノード取得<title>要素を:
x = xmlDoc.getElementsByTagName("title")[0];
y = x.childNodes[0];
nodeValueプロパティ
nodeValueプロパティは、 テキストノードのテキスト値を返します。
次のコードは、最初のテキストノードのテキスト値取得<title>要素を:
例
x = xmlDoc.getElementsByTagName("title")[0];
y = x.childNodes[0];
z = y.nodeValue;
ZでResul: "Everyday Italian"
完全な例
例
<!DOCTYPE html>
<html>
<body>
<p id="demo"></p>
<script>
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (xhttp.readyState == 4 && xhttp.status == 200) {
myFunction(xhttp);
}
};
xhttp.open("GET",
"books.xml", true);
xhttp.send();
function myFunction(xml) {
var xmlDoc = xml.responseXML;
var x = xmlDoc.getElementsByTagName('title')[0];
var y =
x.childNodes[0];
document.getElementById("demo").innerHTML = y.nodeValue;
}
</script>
</body>
</html>
»それを自分で試してみてください すべてをループ<title>要素: それを自分で試してみてください
属性の値を取得します
ではDOM,属性はノードです。 要素ノードとは異なり、属性ノードは、テキスト値を持っています。
属性の値を取得する方法は、そのテキスト値を取得することです。
これは、使用して行うことができるgetAttribute()メソッドを、または属性ノードののnodeValueプロパティを使用して。
属性値を取得する- getAttribute()
getAttribute()メソッドが返すattribute's value 。
次のコードは、テキスト値取得"lang"最初の属性<title>要素を:
TXTで結果: "en"
すべてをループ<book>要素とその取得"category"属性: それを自分で試してみてください
属性値を取得する- getAttributeNode()
getAttributeNode()メソッドが返すattribute node 。
次のコードは、テキスト値取得"lang"最初の属性<title>要素を:
例
x = xmlDoc.getElementsByTagName("title")[0];
y = x.getAttributeNode("lang");
txt = y.nodeValue;
»それを自分で試してみてください txtの中で結果= "en"
すべてをループ<book>要素とその取得"category"属性: それを自分で試してみてください