XML DOM Düğüm Ekleme

Örnek

Aşağıdaki örnek, XML dosyasını kullanır books.xml.

Fonksiyon loadXMLDoc()Dış JavaScript'te yer alan, XML dosyasını yüklemek için kullanılır.

En son alt düğümün ardından bir düğüm ekleyin
Bu örnek, mevcut bir düğüme alt düğüm eklemek için appendChild() yöntemini kullanır.
Belirtilen alt düğümün öncesine bir düğüm ekleyin
Bu örnek, belirli bir alt düğümün öncesine bir düğüm eklemek için insertBefore() yöntemini kullanır.
Yeni bir özellik ekleyin
Bu örnek, yeni bir özellik eklemek için setAttribute() yöntemini kullanır.
Metin düğümüne veri ekleyin
Bu örnek, mevcut bir metin düğümüne veri eklemek için insertData() kullanır.

Düğüm ekleme - appendChild()

appendChild() yöntemi, mevcut düğüme alt düğüm eklemek için kullanılır.

Yeni düğüm, herhangi bir mevcut alt düğümün ardından eklenir (eklenir).

Not:Düğümün konumu önemliyse, insertBefore() yöntemini kullanın.

Aşağıdaki kod parçası, bir element ( edition) oluşturur ve onu ilk <book> elementinin en son alt düğümünün ardından ekler:

xmlDoc=loadXMLDoc("books.xml");
newel=xmlDoc.createElement("edition");
x=xmlDoc.getElementsByTagName("book")[0];
x.appendChild(newel);

Örnek açıklama:

  1. Kullanarak loadXMLDoc() "books.xml"xmlDoc"'a yükle
  2. Yeni bir düğüm <edition> oluşturun
  3. Bu düğümü ilk <book> elementine ekleyin

TIY

Döngü ve tüm <book> elementlerine bir element ekleyin:TIY

Düğüm ekleme - insertBefore()

insertBefore() yöntemi, belirtilen alt düğümün öncesine düğüm eklemek için kullanılır.

Eklenecek düğümün konumu önemliyse, bu yöntem çok faydalıdır.

xmlDoc=loadXMLDoc("books.xml");
newNode=xmlDoc.createElement("book");
x=xmlDoc.documentElement;
y=xmlDoc.getElementsByTagName("book")[3];
x.insertBefore(newNode,y);

Örnek açıklama:

  1. Kullanarak loadXMLDoc() "books.xml"xmlDoc"'a yükle
  2. Yeni bir element düğümü <book> oluşturun
  3. Bu düğümü en son <book> element düğümü öncesine ekleyin

TIY

insertBefore() ikinci parametresi null ise, yeni düğüm en son mevcut alt düğümün ardından eklenir.

x.insertBefore(newNode,null) ve x.appendChild(newNode) hepsi x'ye yeni bir alt düğüm eklemek için kullanılabilir.

Yeni bir özellik ekleyin

addAtribute() bu yöntem mevcut değil.

Eğer özellik yoksa, setAttribute() yeni bir özellik oluşturabilir:

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName('book');
x[0].setAttribute("edition","first");

Örnek açıklama:

  1. Kullanarak loadXMLDoc() "books.xml"xmlDoc"'a yükle
  2. İlk <book> elementinin "edition" özellik değerini (oluşturma) "first" olarak ayarlayın:

TIY

Not:Eğer özellik mevcutsa, setAttribute() yöntemi mevcut değeri geçersiz kılar.

Metin noduna metin eklemek - insertData()

insertData() yöntemi, mevcut metin noduna veri ekler.

insertData() yöntemi iki parametreye sahiptir:

  • offset - Karakterlerin eklenmeye başlanacağı yer (0 ile başlar)
  • string - Eklenecek olan dizi

Aşağıdaki kod parçası, "Easy" ifadesini yüklenen XML'nin ilk <title> elementinin metin noduna ekleyecektir:

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];
x.insertData(0,"Hello ");

TIY