XML DOM Обход дерева узлов
Обход означает циклический проход или перемещение по дереву узлов.
Обход дерева узлов
Часто требуется пройти по XML-документу в цикле, например: когда нужно извлечь значение каждого элемента.
Это называется "обходом дерева узлов".
Следующий пример выполняет обход всех дочерних узлов <book> и отображает их имена и значения:
Пример
<!DOCTYPE html>
<html>
<body>
<p id="demo"></p>
<script>
var x, i ,xmlDoc;
var txt = "";
var text = "<book>" +
"<title>Everyday Italian</title>" +
"<author>Giada De Laurentiis</author>" +
"<year>2005</year>" +
"</book>";
parser = new DOMParser();
xmlDoc = parser.parseFromString(text,"text/xml");
//documentElement представляет корневой узел
x = xmlDoc.documentElement.childNodes;
for (i = 0; i < x.length ;i++) {
txt += x[i].nodeName + ": " + x[i].childNodes[0].nodeValue + "<br>";
}
document.getElementById("demo").innerHTML = txt;
</script>
</body>
</html>
Вывод:
title: Everyday Italian
author: Giada De Laurentiis
year: 2005
author: Giada De Laurentiis
year: 2005
Попробуйте сами »
Пояснение к примеру:
- Загрузите XML-строку в xmlDoc.
- Получить дочерние узлы корневого элемента
- Выведите имя узла каждого дочернего узла и значение текстового узла.
Другие расширения