Δημιουργία Στοιχείων του XML DOM

Παράδειγμα

Τα παρακάτω παραδείγματα χρησιμοποιούν αρχεία XML books.xml.

Λειτουργία loadXMLDoc()τοποθετημένο εξωτερικά σε JavaScript, για τη φόρτωση αρχείων XML.

Δημιουργία κόμβου στοιχείου
Για παράδειγμα, χρησιμοποιούμε το createElement() για τη δημιουργία νέου κόμβου στοιχείου και το appendChild() για την προσθήκη του σε ένα κόμβο.
Δημιουργία χαρακτηριστικού κόμβου μέσω της χρήσης του createAttribute
Για παράδειγμα, χρησιμοποιούμε το createAttribute() για τη δημιουργία νέου χαρακτηριστικού κόμβου και το setAttributeNode() για την εισαγωγή του σε ένα στοιχείο.
Δημιουργία χαρακτηριστικού κόμβου μέσω της χρήσης του setAttribute
Για παράδειγμα, χρησιμοποιούμε το setAttribute() για τη δημιουργία νέου χαρακτηριστικού στοιχείου.
Δημιουργία κόμβου κειμένου
Για παράδειγμα, χρησιμοποιούμε το createTextNode() για τη δημιουργία νέου κόμβου κειμένου και το appendChild() για την προσθήκη του σε ένα στοιχείο.
Δημιουργία ενός κόμβου CDATA section
Για παράδειγμα, χρησιμοποιούμε το createCDATAsection() για τη δημιουργία ενός κόμβου CDATA section και το appendChild() για την προσθήκη του σε ένα στοιχείο.
Δημιουργία κόμβου comment
Για παράδειγμα, χρησιμοποιούμε το createComment() για τη δημιουργία ενός κόμβου comment και το appendChild() για την προσθήκη του σε ένα στοιχείο.

Δημιουργία νέου κόμβου στοιχείου

Ο μέθοδος createElement() δημιουργεί νέο κόμβο στοιχείου:

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

Παράδειγμα εξήγησης:

  1. Με τη χρήση loadXMLDoc() Προσθέστε το "books.xml" Φόρτωση xmlDoc"
  2. Δημιουργία νέου κόμβου στοιχείου <edition>
  3. Προσθήκη αυτού του κόμβου στοιχείου στο πρώτο στοιχείο <book>

TIY

Περιήγηση και προσθήκη ενός στοιχείου σε όλα τα στοιχεία <book>TIY

Δημιουργία νέου κόμβου αtribute

Το createAttribute() χρησιμοποιείται για τη δημιουργία νέου κόμβου αtribute:

xmlDoc=loadXMLDoc("books.xml");
newatt=xmlDoc.createAttribute("edition");
newatt.nodeValue="first";
x=xmlDoc.getElementsByTagName("title");
x[0].setAttributeNode(newatt); 

Παράδειγμα εξήγησης:

  1. Με τη χρήση loadXMLDoc() Προσθέστε το "books.xml" Φόρτωση xmlDoc"
  2. Δημιουργία νέου κόμβου αtribute "edition"
  3. Προσθήκη αυτού του νέου κόμβου αtribute στο πρώτο στοιχείο <title>

TIY

Περιήγηση όλων των στοιχείων <title> και προσθήκη νέου κόμβου αtribute:TIY

Σημείωση: Αν το αtribute υπάρχει ήδη, θα αντικατασταθεί από το νέο αtribute.

Δημιουργία αtribute με τη χρήση του setAttribute()

Επειδή το setAttribute() μπορεί να δημιουργήσει νέα αtribute όταν το αtribute δεν υπάρχει, μπορούμε να χρησιμοποιήσουμε αυτόν τον τρόπο για τη δημιουργία νέων αtribute.

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

Παράδειγμα εξήγησης:

  1. Με τη χρήση loadXMLDoc() Προσθέστε το "books.xml" Φόρτωση xmlDoc"
  2. Ρύθμιση (δημιουργία) του αtribute για το πρώτο στοιχείο <book> με τιμή "first"

TIY

Περιήγηση όλων των στοιχείων <title> και προσθήκη νέου αtribute:TIY

Δημιουργία κόμβου κειμένου

Ο μέθοδος createTextNode() δημιουργεί νέο κόμβο κειμένου:

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

Παράδειγμα εξήγησης:

  1. Με τη χρήση loadXMLDoc() Προσθέστε το "books.xml" Φόρτωση xmlDoc"
  2. Δημιουργία νέου κόμβου στοιχείου <edition>
  3. Δημιουργία νέου κόμβου κειμένου με το κείμενο "first"
  4. Προσθήκη νέου κόμβου κειμένου σε αυτόν τον κόμβο στοιχείου
  5. Προσθήκη νέου κόμβου στοιχείου στο πρώτο στοιχείο <book>

TIY

Προσθήκη ενός κόμβου στοιχείου με κείμενο σε όλα τα στοιχεία <book>TIY

Δημιουργία ενός κόμβου CDATA Section

Ο μέθοδος createCDATASection() δημιουργεί έναν νέο κόμβο CDATA section.

xmlDoc=loadXMLDoc("books.xml");
newCDATA=xmlDoc.createCDATASection("Special Offer & Book Sale");
x=xmlDoc.getElementsByTagName("book")[0];
x.appendChild(newCDATA);

Παράδειγμα εξήγησης:

  1. Με τη χρήση loadXMLDoc() Προσθέστε το "books.xml" Φόρτωση xmlDoc"
  2. Δημιουργία νέας ενότητας CDATA
  3. Προσθέστε την νέα ενότητα CDATA στο πρώτο στοιχείο <book>

TIY

Παρακολούθηση και προσθήκη μιας ενότητας CDATA σε όλα τα στοιχεία <book>:TIY

Δημιουργία κόμβου comment

Η μέθοδος createComment() δημιουργεί έναν νέο κόμβο comment.

xmlDoc=loadXMLDoc("books.xml");
newComment=xmlDoc.createComment("Revised March 2008");
x=xmlDoc.getElementsByTagName("book")[0];
x.appendChild(newComment);

Παράδειγμα εξήγησης:

  1. Με τη χρήση loadXMLDoc() Προσθέστε το "books.xml" Φόρτωση xmlDoc"
  2. Δημιουργία νέου κόμβου comment
  3. Προσθέστε τον νέο κόμβο comment στο πρώτο στοιχείο <book>

TIY

Καθ' όλη τη διαδρομή και προσθήκη μιας κόμβου comment σε όλα τα στοιχεία <book>:TIY