Duyệt cây nút XML DOM
- Trang trước Danh sách các nút DOM
- Trang tiếp theo Trình duyệt DOM
Duyệt (Traverse) có nghĩa là lặp lại hoặc di chuyển trong cây nút.
Mẫu
Dưới đây là ví dụ sử dụng tệp XML books.xml.
Hàm loadXMLString()nằm ở bên ngoài JavaScript, được sử dụng để tải tệp XML.
- Duyệt cây nút
- Lặp lại tất cả các phần tử con của phần tử <book>.
Duyệt cây nút
Bạn thường xuyên cần duyệt tài liệu XML, ví dụ: khi bạn cần lấy giá trị của mỗi phần tử.
Quá trình này được gọi là “duyệt cây nút”.
Dưới đây là ví dụ lặp lại tất cả các phần tử con của <book> và hiển thị tên và giá trị của chúng:
<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 luôn đại diện cho nút gốc 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>
Xuất ra:
title: Harry Potter author: J K. Rowling year: 2005
Giải thích ví dụ:
- loadXMLString() Charger chuỗi XML vào xmlDoc
- Lấy các nút con của phần tử gốc
- Xuất ra tên của mỗi nút con và giá trị của nút văn bản
- Trang trước Danh sách các nút DOM
- Trang tiếp theo Trình duyệt DOM