Пробивание узлов дерева XML DOM
- Предыдущая страница Список узлов DOM
- Следующая страница Браузер DOM
Пробивание (Traverse) означает циклическое или линейное движение по дереву узлов.
Пример
Ниже приведен пример, который использует файл XML: books.xml.
Функция loadXMLString()находится во внешнем JavaScript, предназначенном для загрузки файла XML.
- Пробивание узлов дерева
- Циклически обрабатываем все подузлы элемента <book>.
Пробивание узлов дерева
Часто вам нужно циклически обрабатывать документ XML, например: когда вам нужно извлечь значение каждого элемента.
Этот процесс называется «пробиванием узлов дерева».
Ниже приведен пример, который циклически обрабатывает все подузлы <book> и отображает их имена и значения:
<html> <head> <script type="text/javascript" src="loadxmlstring.js"></script> </head> <body> <script type="text/javascript"> text="<book>"; text=text+"<title>Harry Potter</title>"; text=text+"<author>J K. Rowling</author>"; text=text+"<year>2005</year>"; text=text+"</book>"; xmlDoc=loadXMLString(text); // documentElement всегда представляет корневой узел x=xmlDoc.documentElement.childNodes; for (i=0;i<x.length;i++) { document.write(x[i].nodeName); document.write(": "); document.write(x[i].childNodes[0].nodeValue); document.write("<br />"); } </script> </body> </html>
Вывод:
заголовок: Harry Potter автор: J K. Rowling год: 2005
Объяснение примера:
- loadXMLString() Загрузка строки XML в xmlDoc
- Получение подузлов корневого элемента
- Вывод имени каждого подузла и значения узла текста
- Предыдущая страница Список узлов DOM
- Следующая страница Браузер DOM