nodeValue属性用于获取节点的文本值。
该getAttribute()方法返回属性的值。
得到一个元素的值
在DOM,一切都是一个节点。 元素节点没有文本值。
元素节点的文本值存储在一个子节点。 这种节点称为文本节点。
若要检索元素的文本价值,你必须检索元素的文本节点的值。
该方法的getElementsByTagName
的getElementsByTagName()因为它们出现在源文件中的方法返回的所有元素的一个节点列表 ,指定标记名称,在相同的顺序。
假设“ 的books.xml ”已经加载到xmlDoc中。
此代码检索第<title>元素:
var x = xmlDoc.getElementsByTagName("title")[0];
该子节点属性
该子节点属性返回元素的子节点列表 。
下面的代码检索第一个的文本节点<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;
Resul在Z: "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"属性: 试一试