XML DOM Düğüm Ekleme
- Önceki sayfa DOM nodu oluşturma
- Sonraki sayfa DOM klon nodu
Ö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:
- Kullanarak loadXMLDoc() "books.xml"xmlDoc"'a yükle
- Yeni bir düğüm <edition> oluşturun
- Bu düğümü ilk <book> elementine ekleyin
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:
- Kullanarak loadXMLDoc() "books.xml"xmlDoc"'a yükle
- Yeni bir element düğümü <book> oluşturun
- Bu düğümü en son <book> element düğümü öncesine ekleyin
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:
- Kullanarak loadXMLDoc() "books.xml"xmlDoc"'a yükle
- İlk <book> elementinin "edition" özellik değerini (oluşturma) "first" olarak ayarlayın:
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 ");
- Önceki sayfa DOM nodu oluşturma
- Sonraki sayfa DOM klon nodu