phương thức getElementsByTagName() của XML DOM
Định nghĩa và cách sử dụng
phương thức getElementsByTagName() có thể trả về một danh sách các nút có tên thẻ cụ thể.
Cú pháp:
getElementsByTagName(name)
Tham số | Mô tả |
---|---|
name | giá trị chuỗi, quy định thẻ cần tìm kiếm. Giá trị "*" khớp với tất cả các thẻ. |
Giá trị trả về
mảng chỉ đọc các nút Element có thẻ cụ thể trong cây tài liệu (技术上 là đối tượng NodeList)。Thứ tự của các nút phần tử trả về chính là thứ tự xuất hiện trong tài liệu nguồn.
Giải thích
phương thức này sẽ trả về một đối tượng NodeList(có thể xử lý như một mảng chỉ đọc), đối tượng này lưu trữ tất cả các nút Element có tên thẻ cụ thể trong tài liệu, thứ tự của chúng chính là thứ tự xuất hiện trong tài liệu nguồn.đối tượng NodeListlà 'sống', tức là nếu thêm hoặc xóa phần tử có tên thẻ cụ thể trong tài liệu, nội dung sẽ tự động cập nhật cần thiết.
Lưu ý, giao diện Element định nghĩa một phương thức cùng tên, phương thức này chỉ tìm kiếm trong cây tài liệu. Ngoài ra, giao diện HTMLDocument định nghĩa phương thức getElementsByName()tìm kiếm phần tử dựa trên giá trị thuộc tính name (không phải là tên thẻ).
Ví dụ
Có thể sử dụng mã sau để tìm kiếm và duyệt qua tất cả các thẻ <h1> trong tài liệu HTML:
var headings = document.getElementsByTagName
(")h1(")
for (var i = 0; i < headings.length; i++) {
var h = headings[i];
}
Mô hình
Trong tất cả các ví dụ, chúng ta sẽ sử dụng tệp XML books.xmlvà hàm JavaScript loadXMLDoc().
Mã nguồn sau đây có thể hiển thị giá trị của tất cả các yếu tố <title> trong "books.xml":
xmlDoc=loadXMLDoc("/example/xdom/books.xml");
var x=xmlDoc.getElementsByTagName('title')
;
for (i=0;i<x.length;i++)
{
document.write(x[i].childNodes[0].nodeValue)
document.write("<br />")
}
Kết quả xuất ra:
Harry Potter Everyday Italian XQuery Kick Start Học XML