Metoda getElementsByTagName() w XML DOM
Definicja i użycie
Metoda getElementsByTagName() zwraca listę węzłów wszystkich elementów o określonej nazwie.
Gramatyka:
getElementsByTagName(name)
Parametry | Opis |
---|---|
name | Wartość ciągła, która określa, który znacznik należy wyszukać. Wartość "*" dopasowuje wszystkie znaczniki. |
Wartość zwrócona
Niewidzialna tablica Elementów o określonym znaczniku w drzewie dokumentu (technicznie jest to Obiekt NodeList)。Kolejność elementów zwróconych to kolejność ich występowania w oryginalnym dokumencie.
Opis
Ta metoda zwróci Obiekt NodeList(można go traktować jako tablicę tylko do odczytu), który przechowuje wszystkie Elementy o określonej nazwie znacznika w dokumencie, ich kolejność jest taka sama jak w oryginalnym dokumencie.Obiekt NodeListjest 'żywy', co oznacza, że jeśli w dokumencie dodasz lub usuniesz element o określonej nazwie znacznika, jego zawartość automatycznie zostanie zaktualizowana.
Uwaga, interfejs Element definiuje metodę o tej samej nazwie, która przeszukuje tylko poddrzewo dokumentu. Ponadto, interfejs HTMLDocument definiuje Metoda getElementsByName()wyszukiwanie elementów na podstawie wartości atrybutu name (zamiast nazwy znacznika).
Przykład
Można użyć poniższego kodu do wyszukiwania i przechodzenia przez wszystkie <h1> znaczniki w dokumencie HTML:
var headings = document.getElementsByTagName
(")h1("")
for (var i = 0; i < headings.length; i++) {
var h = headings[i];
}
Przykład
W wszystkich przykładach użyjemy pliku XML books.xml, oraz funkcji JavaScript loadXMLDoc().
Poniższy fragment kodu może wyświetlić wartości wszystkich elementów <title> w pliku "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 />")
}
Wynik:
Harry Potter Everyday Italian XQuery Kick Start Learning XML