Προσθήκη Κομβών XML DOM
- Προηγούμενη σελίδα DOM δημιουργία κόμβων
- Επόμενη σελίδα DOM 克隆节点
Παράδειγμα
Το παρακάτω παράδειγμα χρησιμοποιεί αρχείο XML books.xml.
Συνάρτηση loadXMLDoc()Εντοπισμένο στο εξωτερικό JavaScript, χρησιμοποιείται για τη φόρτωση αρχείων XML.
- Προσθήκη κόμβου μετά τον τελευταίο υποπλήρωμα
- Αυτό το παράδειγμα χρησιμοποιεί τη μέθοδο appendChild() για την προσθήκη υποπλήρωματος σε υπάρχον κόμβο.
- Προσθήκη κόμβου πριν από μια συγκεκριμένη υπογωνία
- Αυτό το παράδειγμα χρησιμοποιεί τη μέθοδο insertBefore() για την εισαγωγή κόμβου πριν από μια συγκεκριμένη υπογωνία.
- Προσθήκη νέας ιδιότητας
- Αυτό το παράδειγμα χρησιμοποιεί τη μέθοδο setAttribute() για την προσθήκη νέας ιδιότητας.
- Προσθήκη δεδομένων σε κόμβο κειμένου
- Αυτό το παράδειγμα χρησιμοποιεί τη μέθοδο insertData() για την εισαγωγή δεδομένων σε ένα υπάρχον κόμβο κειμένου.
Προσθήκη κόμβου - appendChild()
Η μέθοδος appendChild() προσθέτει υποπλήρωμα σε υπάρχον κόμβο.
Η νέα γωνία θα προστεθεί (προσθέτειται) μετά οποιοδήποτε υπάρχον υποπλήρωμα.
Σημείωση:Αν η θέση του κόμβου είναι σημαντική, χρησιμοποιήστε τη μέθοδο insertBefore().
Το παρακάτω κείμενο κώδικα δημιουργεί ένα στοιχείο (<edition>) και το προσθέτει μετά τον τελευταίο υποπλήρωμα του πρώτου στοιχείου <book>.
xmlDoc=loadXMLDoc("books.xml"); newel=xmlDoc.createElement("edition"); x=xmlDoc.getElementsByTagName("book")[0]; x.appendChild(newel);
Παράδειγμα ερμηνείας:
- Με τη χρήση loadXMLDoc() Προσθέστε το "books.xmlΠροσθέστε το xmlDoc
- Δημιουργία νέου κόμβου <edition>.
- Προσθέστε αυτόν τον κόμβο στο πρώτο στοιχείο <book>.
Αναπαράσταση και προσθήκη ενός στοιχείου σε όλα τα στοιχεία <book>:TIY
Εισαγωγή κόμβου - insertBefore()
Η μέθοδος insertBefore() χρησιμοποιείται για την εισαγωγή κόμβων πριν από μια συγκεκριμένη υπογωνία.
Αυτή η μέθοδος είναι πολύ χρήσιμη όταν η θέση του προσθέτου είναι σημαντική.
xmlDoc=loadXMLDoc("books.xml"); newNode=xmlDoc.createElement("book"); x=xmlDoc.documentElement; y=xmlDoc.getElementsByTagName("book")[3]; x.insertBefore(newNode,y);
Παράδειγμα ερμηνείας:
- Με τη χρήση loadXMLDoc() Προσθέστε το "books.xmlΠροσθέστε το xmlDoc
- Δημιουργία νέου κόμβου στοιχείου <book>.
- Προσθέστε αυτόν τον κόμβο πριν από τον τελευταίο κόμβο του <book>.
Αν ο δεύτερος παράγοντας του insertBefore() είναι null, η νέα γωνία θα προστεθεί μετά τον τελευταίο υπάρχοντα υποπλήρωμα.
x.insertBefore(newNode,null) και x.appendChild(newNode) μπορούν να προσθέσουν έναν νέο υποπλήρωμα στο x.
Προσθήκη νέας ιδιότητας
Η μεθόδος addAtribute() δεν υπάρχει.
Αν η ιδιότητα δεν υπάρχει, η μέθοδος setAttribute() μπορεί να δημιουργήσει μια νέα ιδιότητα:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName('book'); x[0].setAttribute("edition","first");
Παράδειγμα ερμηνείας:
- Με τη χρήση loadXMLDoc() Προσθέστε το "books.xmlΠροσθέστε το xmlDoc
- Θέστε την τιμή του attributes του πρώτου στοιχείου <book> σε "first"
Σημείωση:Αν η ιδιότητα υπάρχει ήδη, η μέθοδος setAttribute() θα καλύψει την υπάρχουσα τιμή.
Προσθήκη κειμένου στο κόμβο κειμένου - insertData()
Η μέθοδος insertData() εισάγει δεδομένα σε υπάρχοντα κόμβους κειμένου.
Η μέθοδος insertData() έχει δύο παραμέτρους:
- offset - το σημείο όπου θα ξεκινήσει η εισαγωγή χαρακτήρων (αρχικά 0)
- string - το κείμενο που θα εισαχθεί
Το παρακάτω κομμάτι κώδικα θα προσθέσει το "Easy" στον πρώτο κόμβο κειμένου του πρώτου στοιχείου <title> του φορτωμένου XML:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title")[0].childNodes[0]; x.insertData(0,"Hello ");
- Προηγούμενη σελίδα DOM δημιουργία κόμβων
- Επόμενη σελίδα DOM 克隆节点