En son web geliştirme öğreticiler
 

XML DOM - Erişim Düğümler


DOM ile, bir XML belgesindeki her düğümü erişebilir.


it Yourself deneyin - Örnekler

Aşağıdaki örnekler, XML dosyası kullanmak books.xml .

Bir düğüm listesindeki indeks numarasını kullanarak bir düğüm yapın
Kullan getElementsByTagName() üçüncü almak için yöntem <title> elementini "books.xml"

Uzunluk özelliğini kullanarak düğümleri arasında döngü
Tüm döngü uzunluğu özelliğini kullanın <title> öğeler "books.xml"

Bir elemanın düğüm türü gör
Kök elemanın düğüm türünü almak için noteType özelliğini kullanın "books.xml" .

Elemanı düğümleri arasında döngü
Tek işlem elemanı düğümlerine noteType özelliğini kullanın "books.xml" .

Düğüm ilişkileri kullanarak elemanı düğümleri arasında döngü
Öğesi düğümlerini işlemek için noteType özelliği ve nextSibling özelliğini kullanın "books.xml" .

x

Başlık


Düğümleri erişme

Üç şekilde bir düğüm erişebilir:

Kullanılarak 1. getElementsByTagName() metodu

Döngü tarafından 2. (traversing) düğümleri ağaç.

, Düğüm ağaç navigasyon düğüm ilişkileri kullanarak 3..


getElementsByTagName() Yöntem

getElementsByTagName() belirtilen etiket adı ile tüm öğeleri döndürür.

Sözdizimi

Örnek

Aşağıdaki örnek, bu döner <title> X elemanı altında elemanları:

x.getElementsByTagName("title");

Sadece yukarıda döner örneğin unutmayın <title> X düğümü altında elemanları. Tüm dönmek için <title> XML belgesi kullanımda unsurları:

xmlDoc.getElementsByTagName("title");

burada xmlDoc belge kendisi (document node) .


DOM Düğüm Listesi

getElementsByTagName() yöntemi, bir düğüm listesi verir. Bir düğüm listesi düğümlerin bir dizidir.

x = xmlDoc.getElementsByTagName("title");

<title> x elemanları dizin numarası ile erişilebilir. Üçüncü erişmek için <title> yazabilirsiniz ::

y = x[2];

Note: endeksi 0 ile başlar.

Bu öğretici bir sonraki bölümde düğüm listeleri hakkında daha fazla öğreneceksiniz.


DOM Düğüm Liste Uzunluğu

Uzunluk özelliği bir düğüm listesi uzunluğunu tanımlar (the number of nodes) .

length özelliğini kullanarak bir düğüm listesi üzerinden yapabilirsiniz döngü:

Örnek

var x = xmlDoc.getElementsByTagName("title");

for (i = 0; i <x.length; i++) {
  // do something for each node
  }
Kendin dene "

Düğüm Çeşitleri

documentElement XML belgesinin mülk kök düğümdür.

nodeName bir düğümün mülkiyet düğümün adıdır.

nodeType bir düğümün özelliği düğümünden türüdür.

Bu yazının sonraki bölümde düğüm özellikleri hakkında daha fazla öğreneceksiniz.

Kendin dene


Traversing Düğümler

Aşağıdaki kod kök düğümün aynı zamanda eleman düğümleri olan çocuk düğümleri, döngüler:

Örnek

txt = "";
x = xmlDoc.documentElement.childNodes;

for (i = 0; i <x.length; i++) {
  // Process only element nodes (type 1)
  if (x[i].nodeType == 1) {
    txt += x[i].nodeName + "<br>";
  }
}
Kendin dene "

Örnek açıklanmıştır:

  1. Eğer "yüklediğiniz varsayalım books.xml xmlDoc içine"
  2. Kök öğesinin alt düğümleri alın (xmlDoc)
  3. Her çocuk düğüm için, düğüm türünü kontrol edin. Düğüm tipi ise "1" bir eleman düğümüdür
  4. Çıktı düğümün adını bir eleman düğümü ise

Gezinme Düğüm İlişkiler

Aşağıdaki kod düğüm ilişkileri kullanarak düğüm ağacı gider:

Örnek

x = xmlDoc.getElementsByTagName("book")[0];
xlen = x.childNodes.length;
y = x.firstChild;

txt = "";
for (i = 0; i <xlen; i++) {
  // Process only element nodes (type 1)
  if (y.nodeType == 1) {
    txt += y.nodeName + "<br>";
  }
  y = y.nextSibling;
}
Kendin dene "

Örnek açıklanmıştır:

  1. Eğer "yüklediğiniz varsayalım books.xml xmlDoc içine"
  2. ilk kitap öğesinin alt düğümleri alın
  3. Set "y" ilk kitap elemanın ilk çocuğu düğüm olarak değişken
  4. Her bir çocuk düğüm için (starting with the first child node "y") :
  5. Düğüm türünü kontrol edin. Düğüm tipi ise "1" bir eleman düğümüdür
  6. Çıktı düğümün adını bir eleman düğümü ise
  7. Set "y" eş düğüme olmak değişken ve tekrar döngü boyunca çalıştırmak