XML DOM 获取节点值

nodeValue 属性用于获取节点的文本值。

getAttribute() 方法返回属性的值。

获取元素的值

在 DOM 中,一切都是节点。元素节点没有文本值。

元素节点的文本值存储在子节点中。该节点被称为文本节点。

如需获得元素的文本值,您必须检索元素的文本节点的值。

也就是说,获取元素文本的方法,就是获取这个子节点(文本节点)的值。

getElementsByTagName 方法

getElementsByTagName() 方法返回包含拥有指定标签名的Chakula cha kwanza cha mabaki ya kipakuaina madende ya mabaki ya kipakua ambayo inasababisha kama ya kuzaliwa kwenye siku ya kuzaliwa.

Tukio books.xml Kilofautziana kwa xmlDoc.

Chaguo chao cha: Chakula cha kwanza <title> kinachotafuta:

var x = xmlDoc.getElementsByTagName("title")[0];

Mafano ya ChildNodes

childNodes Mafano ya kusaidiaChakula cha kwanza cha mabaki wa mikononi.

Chaguo chao cha: Chakula cha kwanza <title> kinachotafuta mawili ya kipakua cha jadili:

x = xmlDoc.getElementsByTagName("title")[0];
y = x.childNodes[0];

Mafano ya nodeValue

nodeValue Mafano ya kusaidiaTaarifa ya mawili ya kipakua cha jadili.

Chaguo chao cha: Chakula cha kwanza <title> kinachotafuta taarifa ya mawili ya kipakua cha jadili:

Mfano

x = xmlDoc.getElementsByTagName("title")[0];
y = x.childNodes[0];
z = y.nodeValue;

Mfano wa z: Mawasiliano wa Kuchoma

Mfano Kamili

Mfano 1

!DOCTYPE html
<html>
<body>
<p id="demo"></p>
<script>
var xwlt = new XMLHttpRequest();
xhttp.onreadystatechange = function() {}}
    if (this.readyState == 4 && this.status == 200) {
        myFunction(this);
    }
};
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>

亲自试一试

Mfano 2

Kufuatilia mtaani mpya ya <title> element:

x = xmlDoc.getElementsByTagName('title');
for (i = 0; i < x.length; i++) { 
    txt += x[i].childNodes[0].nodeValue + "<br>";
}

亲自试一试

Pakua thamani ya uhusiano

Kwenye DOM, uhusiano ndio na wengi. Kinaeleza na kitengo cha elementi, kitengo cha uhusiano ana thamani ya maudhui.

Method ya kufikia thamani ya uhusiano ni kufikia thamani ya maudhui ya kitendo.

Inaweza kufanyika kwa kutumia getAttribute() Method au kitengo cha uhusiano nodeValue Uhusiano huu ulitumika kufanya kazi hii.

Pakua thamani ya uhusiano - getAttribute()

getAttribute() Method ya kumwambaa inaonyeshaThamani ya uhusiano.

Maelezo ya chakula ya kwanza ya <title> element: "lang" Chanzo cha uhusiano wa kina:

Mfano 1

x = xmlDoc.getElementsByTagName("title")[0];
txt = x.getAttribute("lang");

亲自试一试

Mfano 2

Kufuatilia mtaani <book> zote na kufikia uhusiano wa "category" yao:

x = xmlDoc.getElementsByTagName("book");
for (i = 0; i < x.length; i++) { 
    txt += x[i].getAttribute("category") + "<br>";
}

亲自试一试

Pakua thamani ya uhusiano - getAttributeNode()

getAttributeNode() Method ya kumwambaa inaonyeshaKitengo cha uhusiano.

Maelezo ya chakula ya kwanza ya <title> element: "lang" Chanzo cha uhusiano wa kina:

Mfano 1

x = xmlDoc.getElementsByTagName("title")[0];
y = x.getAttributeNode("lang");
txt = y.nodeValue;

亲自试一试

Mfano 2

Kufuatilia mtaani <book> zote na kufikia uhusiano wa "category" yao:

x = xmlDoc.getElementsByTagName("book");
for (i = 0; i < x.length; i++) {
    txt += x[i].getAttributeNode("category").nodeValue + "
"; }

亲自试一试