Διαγραφή Γιασμάτων του XML DOM
removeChild()
Το μέθοδος διαγράφει το καθορισμένο στοιχείο.
removeAttribute()
Το μέθοδος διαγράφει το καθορισμένο χαρακτηριστικό.
Διαγραφή στοιχείου στοιχείου
removeChild()
Το μέθοδος διαγράφει το καθορισμένο στοιχείο.
Όταν διαγράφεται ένα στοιχείο, όλα τα υποστοιχεία του διαγράφονται επίσης.
Αυτό το κώδικας θα διαγράψει το πρώτο στοιχείο <book> από το φορτωμένο xml:
παράδειγμα
y = xmlDoc.getElementsByTagName("book")[0]; xmlDoc.documentElement.removeChild(y);
例子解释:
- 假设 books.xml 已被加载到
xmlDoc
中 - θα πρέπει να ρυθμιστεί
y
θα πρέπει να ρυθμιστεί στο στοιχείο που πρέπει να αφαιρεθεί - 使用
removeChild()
Το μέθοδος διαγράφει το στοιχείο από το γονικό στοιχείο
Διαγραφή αυτού - Διαγραφή του τρέχοντος στοιχείου
removeChild()
Το μέθοδος είναι η μοναδική μέθοδος που μπορεί να διαγράψει το καθορισμένο στοιχείο.
Όταν πλοηγείστε στο στοιχείο που θέλετε να διαγράψετε: parentNode
ιδιότητες και removeChild()
Για να διαγράψετε το στοιχείο:
παράδειγμα
x = xmlDoc.getElementsByTagName("book")[0]; x.parentNode.removeChild(x);
例子解释:
- 假设 books.xml 已被加载到
xmlDoc
中 - θα πρέπει να ρυθμιστεί
y
θα πρέπει να ρυθμιστεί στο στοιχείο που πρέπει να αφαιρεθεί - 使用
parentNode
ιδιότητες καιremoveChild()
για να διαγράψετε τον κόμβο στοιχείου
Διαγραφή κόμβου κειμένου
removeChild()
Η μέθοδος μπορεί επίσης να χρησιμοποιηθεί για τη διαγραφή του κόμβου κειμένου:
παράδειγμα
x = xmlDoc.getElementsByTagName("title")[0]; y = x.childNodes[0]; x.removeChild(y);
例子解释:
- 假设 books.xml 已被加载到
xmlDoc
中 - θα πρέπει να ρυθμιστεί
x
στο πρώτο στοιχείο title - θα πρέπει να ρυθμιστεί
y
θα πρέπει να αφαιρεθεί - 使用
removeChild()
για να αφαιρέσετε τον κόμβο από τον γονικό κόμβο
Χρησιμοποιήστε μόνο removeChild()
Η διαγραφή κειμένου από τον κόμβο δεν είναι συχνή. Μπορεί να χρησιμοποιηθεί η ιδιότητα nodeValue. Δείτε το επόμενο κεφάλαιο.
Καθαρισμός κόμβου κειμένου
nodeValue
Η ιδιότητα μπορεί να χρησιμοποιηθεί για να αλλάξει ή να καθαρίσει την τιμή του κόμβου κειμένου:
παράδειγμα
xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue = "";
例子解释:
- 假设 books.xml 已被加载到
xmlDoc
中 - Αποκτήστε τον πρώτο υποκόμβο του στοιχείου title
- 使用
nodeValue
ιδιότητες για να καθαρίσετε τον κόμβο κειμένου
Διαγραφή κόμβου ιδιότητας με βάση το όνομα
removeAttribute()
Η μέθοδος χρησιμοποιείται για τη διαγραφή του κόμβου ιδιότητας με βάση το όνομα.
παράδειγμα 1
Η παρακάτω κώδικας διαγράφει την ιδιότητα "category" από τον πρώτο κόμβο <book>:
x = xmlDoc.getElementsByTagName("book"); x[0].removeAttribute("category");
例子解释:
- 假设 books.xml 已被加载到
xmlDoc
中 - 使用
getElementsByTagName()
για να αποκτήσετε τον κόμβο book - Διαγραφή της ιδιότητας "category" από τον πρώτο κόμβο book
παράδειγμα 2
Καθιέρωση κύκλου και διαγραφή όλων των ιδιοτήτων "category" των στοιχείων <book>:
for (i = 0; i < xLen; i++) { y = x.item(i); y.removeAttribute('category'); }
Διαγραφή κόμβου ιδιότητας με βάση το αντικείμενο
removeAttributeNode()
Η μέθοδος χρησιμοποιεί το αντικείμενο Node ως παραμέτρο για τη διαγραφή του κόμβου ιδιότητας.
Η παρακάτω κώδικας διαγράφει όλες τις ιδιότητες των στοιχείων <book>:
παράδειγμα
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); } }
例子解释:
- 假设 books.xml 已被加载到
xmlDoc
中 - 使用
getElementsByTagName()
来获取所有 book 节点 - 检查每个 book 元素是否有属性
- 如果在某个 book 元素中存在属性,则删除该属性