XML DOM Düğüm Silme
- Önceki sayfa DOM nodunu değiştirme
- Sonraki sayfa DOM nodu değiştirme
removeChild() yöntemi, belirtilen düğümü siler.
removeAttribute() yöntemi, belirtilen özelliği siler.
örnek
Aşağıdaki örnek, XML dosyasını kullanır: books.xml
fonksiyon loadXMLDoc()dışarıdaki JavaScript'te yüklemek için kullanılır.
- Element düğümünü silmek
- Bu örnek, ilk <book> öğesini silmek için removeChild() kullanır.
- Mevcut element düğümünü silmek
- Bu örnek, mevcut <book> öğesini silmek için parentNode ve removeChild() kullanır.
- parentNode özelliği ve removeChild() yöntemini kullanarak bu element düğümünü silmek
- Bu örnek, ilk <title> öğesinin metin düğümünü silmek için removeChild() kullanır.
- Metin düğümünün metnini temizlemek
- Bu örnek, ilk <title> öğesinin metin düğümünü temizlemek için nodeValue() özelliğini kullanır.
- Adına göre özellik silmek
- Bu örnek, ilk <book> öğesinde "category" özelliğini silmek için removeAttribute() kullanır.
- Nesneye göre özellik silmek
- Bu örnek, <book> öğesindeki tüm özellikleri silmek için removeAttributeNode() kullanır.
Element düğümünü silmek
removeChild() yöntemi, belirtilen düğümü siler.
Bir düğüm silindiğinde, tüm alt düğümleri de silinir.
Aşağıdaki kod parçası, yüklenen xml'den ilk <book> öğesini silecektir:
xmlDoc=loadXMLDoc("books.xml"); y=xmlDoc.getElementsByTagName("book")[0]; xmlDoc.documentElement.removeChild(y);
Örnek açıklaması:
- Kullanarak loadXMLDoc() "books.xml" xmlDoc 'a yükleyin
- x.parentNode.removeChild(x);
- xmlDoc.documentElement.removeChild(y);
Ebeveyn düğümünden element düğümünü silmek için removeChild() yöntemini kullanın
Kendi kendini silme - mevcut düğümü silmek
removeChild() yöntemi, belirli bir düğümü silmek için tek yöntemdir.
xmlDoc=loadXMLDoc("books.xml"); Silinmesi gereken düğümü belirlediğinizde, parentNode özelliği ve removeChild() yöntemini kullanarak bu düğümü silebilirsiniz: x=xmlDoc.getElementsByTagName("book")[0];
Örnek açıklaması:
- Kullanarak loadXMLDoc() "books.xml" xmlDoc 'a yükleyin
- x.parentNode.removeChild(x);
- Silinecek element düğümünü değişken y'ye ayarlayın
parentNode özelliği ve removeChild() yöntemini kullanarak bu element düğümünü silmek
Metin düğümünü silmek
xmlDoc=loadXMLDoc("books.xml"); removeChild() yöntemi, metin düğümünü silmek için kullanılabilir: x=xmlDoc.getElementsByTagName("title")[0]; y=x.childNodes[0];
Örnek açıklaması:
- Kullanarak loadXMLDoc() "books.xml" xmlDoc 'a yükleyin
- x.removeChild(y);
- Değişken x'yi ilk title elementi düğümüne ayarlayın
- Silinecek metin düğümünü değişken y'ye ayarlayın
removeChild() yöntemini kullanarak bir düğümü ebeveyn düğümünden silmek
Daha az kullanılan removeChild() yöntemi, bir düğümü düğümün içinden silmek için kullanılır. Onun yerine nodeValue özelliğini kullanabilirsiniz. Bir sonraki paragrafta göreceksiniz.
Metin düğümünü temizlemek
xmlDoc=loadXMLDoc("books.xml"); nodeValue özelliği, metin düğümünün değerini değiştirmek veya temizlemek için kullanılabilir: x.nodeValue="";
Örnek açıklaması:
- Kullanarak loadXMLDoc() "books.xml" xmlDoc 'a yükleyin
- Değişken x'yi ilk title elementinin metin düğümüne ayarlayın
- Metin düğümünü temizlemek için nodeValue özelliğini kullanın
Tüm <title> elementlerinin metin düğümünü değiştirmek için döngü yapın: TIY
Adına göre özellik düğümünü silmek
removeAttribute(name) yöntemi, adına göre özellik düğümünü silmek için kullanılır.
Örnek: removeAttribute('category')
Aşağıdaki kod parçası, ilk <book> elementindeki "category" özelliğini siler:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("book"); x[0].removeAttribute("category");
Örnek açıklaması:
- Kullanarak loadXMLDoc() "books.xml" xmlDoc 'a yükleyin
- getElementsByTagName() kullanarak book düğümünü elde edin
- İlk book ögesi nodundan "category" özelliğini silin
Tüm <book> ögelerinin "category" özelliğini tarayın ve silin: TIY.
Nesneye göre özellik nodunu silme
removeAttributeNode(node) metodu, Node nesnesini parametre olarak kullanarak özellik nodunu silmek için kullanılır.
Örnek: removeAttributeNode(x)
Aşağıdaki kod parçası tüm <book> ögesinin tüm özelliklerini siler:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("book"); for (i=0;i<x.length;i++) { while (x[i].attributes.length>0) { attnode=x[i].attributes[0]; old_att=x[i].removeAttributeNode(attnode); } }
Örnek açıklaması:
- Kullanarak loadXMLDoc() "books.xml" xmlDoc 'a yükleyin
- getElementsByTagName() kullanarak tüm book nodlarını alın
- Her book ögesinin bir özelliği olup olmadığını kontrol edin
- Bir book ögesinde bir özellik varsa, bu özelliği silin
- Önceki sayfa DOM nodunu değiştirme
- Sonraki sayfa DOM nodu değiştirme