XML DOM Düğüm Listesi
getElementsByTagName() yöntemi ve childNodes özelliği tarafından bir düğüm listesi döndürülür.
Kendiniz Deneyin - Örnekler
Aşağıdaki örnekler, book.xml XML dosyasını kullanır .
Bu örnek, "books.xml" içindeki ilk <title> öğesinden metni almak için getElementsByTagName() yöntemini kullanır.
yapın Bu örnek, "books.xml" içindeki tüm <title> öğeleri arasında döngü yapmak için düğüm listesi ve length özelliğini kullanır.
Bu örnek, "books.xml" içindeki ilk <book> öğesinden özniteliği almak için bir öznitelik listesi kullanır.
DOM Düğüm Listesi
ChildNodes veya getElementsByTagName() gibi özellikleri veya yöntemleri kullanırken, bir düğüm listesi nesnesi döndürülür.
Bir düğüm listesi nesnesi, XML'dekiyle aynı sırada bir düğüm listesini temsil eder.
Düğüm listesindeki düğümlere 0'dan başlayan dizin numaralarıyla erişilir.
Aşağıdaki görüntü, " books.xml " içindeki <title> öğelerinin bir düğüm listesini temsil eder :
"books.xml" dosyasının xmlDoc değişkenine yüklendiğini varsayalım.
Bu kod parçası, "books.xml" içindeki başlık öğelerinin bir düğüm listesini döndürür:
x = xmlDoc.getElementsByTagName("title");
Yukarıdaki ifadenin yürütülmesinden sonra x, bir düğüm listesi nesnesidir.
Aşağıdaki kod parçası, düğüm listesindeki (x) ilk <title> öğesindeki metni döndürür:
Örnek
var txt = x[0].childNodes[0].nodeValue;
Yukarıdaki ifadenin yürütülmesinden sonra, txt = "Gündelik İtalyanca".
Düğüm Listesi Uzunluğu
Bir düğüm listesi nesnesi kendisini güncel tutar. Bir öğe silinir veya eklenirse liste otomatik olarak güncellenir.
Bir düğüm listesinin uzunluk özelliği, listedeki düğüm sayısıdır.
Bu kod parçası, "books.xml" içindeki <title> öğelerinin sayısını döndürür:
x = xmlDoc.getElementsByTagName('title').length;
Yukarıdaki ifadenin yürütülmesinden sonra x'in değeri 4 olacaktır.
Düğüm listesinin uzunluğu, listedeki tüm öğeler arasında döngü yapmak için kullanılabilir.
Bu kod parçası, <title> öğeleri listesinde döngü yapmak için length özelliğini kullanır:
Örnek
x = xmlDoc.getElementsByTagName('title');
xLen = x.length;
for (i = 0; i <xLen; i++) {
txt += x[i].childNodes[0].nodeValue) + " ";
}
Çıktı:
Everyday Italian
Harry Potter
XQuery Kick Start
Learning XML
Örnek açıkladı:
- " books.xml " dosyasının xmlDoc'a yüklendiğini varsayalım.
- Tüm başlık öğelerinin bir düğüm listesini tutmak için x değişkenini ayarlayın
- <title> öğelerinden metin düğümü değerlerini toplayın
DOM Özellik Listesi (Adlandırılmış Düğüm Haritası)
Bir öğe düğümünün öznitelikler özelliği, öznitelik düğümlerinin bir listesini döndürür.
Buna adlandırılmış düğüm haritası denir ve yöntem ve özelliklerdeki bazı farklılıklar dışında bir düğüm listesine benzer.
Bir öznitelik listesi kendini güncel tutar. Bir öznitelik silinir veya eklenirse liste otomatik olarak güncellenir.
Bu kod parçası, "books.xml" içindeki ilk <book> öğesinden öznitelik düğümlerinin bir listesini döndürür:
x = xmlDoc.getElementsByTagName('book')[0].attributes;
Yukarıdaki kodun yürütülmesinden sonra, x.length = özniteliklerin sayısıdır ve bir öznitelik düğümünü döndürmek için x.getNamedItem() kullanılabilir.
Bu kod parçası, bir kitabın "kategori" özniteliğinin değerini ve özniteliklerin sayısını alır:
Örnek
x = xmlDoc.getElementsByTagName("book")[0].attributes;
txt = x.getNamedItem("category").nodeValue + " " + x.length;
Çıktı:
cooking
1
Örnek açıkladı:
- " books.xml " dosyasının xmlDoc'a yüklendiğini varsayalım.
- İlk <book> öğesinin tüm niteliklerinin bir listesini tutmak için x değişkenini ayarlayın
- "Kategori" özniteliğinin değerini ve öznitelik listesinin uzunluğunu alın