XML DOM Nodes Creëren
- Previous page DOM replace node
- Next page DOM add node
Voorbeeld
De volgende voorbeelden gebruiken XML-bestanden books.xml.
Functie loadXMLDoc()Ligt buiten het JavaScript, gebruikt om XML-bestanden te laden.
- Maak een elementknop
- Dit voorbeeld gebruikt createElement() om een nieuwe elementknop te maken en appendChild() om deze toe te voegen aan een knop.
- Door het gebruik van createAttribute om een eigenschapsknop te maken
- Dit voorbeeld gebruikt createAttribute() om een nieuwe eigenschapsknop te maken en setAttributeNode() om deze in een element in te voegen.
- Door het gebruik van setAttribute om een eigenschapsknop te maken
- Dit voorbeeld gebruikt setAttribute() om een nieuwe eigenschap voor een element te maken.
- Maak een tekst knoop aan
- Dit voorbeeld gebruikt createTextNode() om een nieuwe tekstknop te maken en appendChild() om deze toe te voegen aan een element.
- Maak een CDATA sectieknop
- Dit voorbeeld gebruikt createCDATAsection() om een CDATA sectieknop te maken en appendChild() om deze toe te voegen aan een element.
- Create comment node
- Dit voorbeeld gebruikt createComment() om een commentaarknop te maken en appendChild() om deze toe te voegen aan een element.
Maak een nieuwe element knoop aan
De methode createElement() maakt een nieuwe element knoop aan:
xmlDoc=loadXMLDoc("books.xml"); newel=xmlDoc.createElement("edition"); x=xmlDoc.getElementsByTagName("book")[0]; x.appendChild(newel);
Example explanation:
- By using loadXMLDoc() Put "books.xml" Load xmlDoc
- Maak een nieuwe element knoop <edition> aan
- Voeg deze element knoop toe aan het eerste <book> element
Bewerk en voeg een element toe aan alle <book> elementen:TIY
Maak een nieuwe eigenschap knoop aan
createAttribute() wordt gebruikt om een nieuwe eigenschap knoop aan te maken:
xmlDoc=loadXMLDoc("books.xml"); newatt=xmlDoc.createAttribute("edition"); newatt.nodeValue="first"; x=xmlDoc.getElementsByTagName("title"); x[0].setAttributeNode(newatt);
Example explanation:
- By using loadXMLDoc() Put "books.xml" Load xmlDoc
- Maak een nieuwe eigenschap knoop "edition" aan
- Voeg deze nieuwe eigenschap knoop toe aan het eerste <title> element
Bewerk alle <title> elementen en voeg een nieuwe eigenschap knoop toe:TIY
Opmerking: Als de eigenschap al bestaat, wordt deze door de nieuwe eigenschap vervangen.
Maak eigenschappen aan met behulp van setAttribute()
Omdat setAttribute() een nieuwe eigenschap kan maken als de eigenschap niet bestaat, kunnen we deze methode gebruiken om nieuwe eigenschappen te maken.
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName('book'); x[0].setAttribute("edition","first");
Example explanation:
- By using loadXMLDoc() Put "books.xml" Load xmlDoc
- Stel (maak) een eigenschap met de waarde "first" in voor het eerste <book> element
Bewerk alle <title> elementen en voeg een nieuwe eigenschap toe:TIY
Maak een tekst knoop aan
De methode createTextNode() maakt een nieuwe tekst knoop aan:
xmlDoc=loadXMLDoc("books.xml"); newel=xmlDoc.createElement("edition"); newtext=xmlDoc.createTextNode("first"); newel.appendChild(newtext); x=xmlDoc.getElementsByTagName("book")[0]; x.appendChild(newel);
Example explanation:
- By using loadXMLDoc() Put "books.xml" Load xmlDoc
- Maak een nieuwe element knoop <edition> aan
- Maak een nieuwe tekst knoop aan, met de tekst "first"
- Voeg een nieuwe tekst knoop toe aan deze element knoop
- Voeg een nieuwe element knoop toe aan het eerste <book> element
Voeg een element knoop met een tekst knoop toe aan alle <book> elementen:TIY
Maak een nieuwe CDATA Section knoop aan
De methode createCDATASection() maakt een nieuwe CDATA sectie knoop aan.
xmlDoc=loadXMLDoc("books.xml"); newCDATA=xmlDoc.createCDATASection("Special Offer & Book Sale"); x=xmlDoc.getElementsByTagName("book")[0]; x.appendChild(newCDATA);
Example explanation:
- By using loadXMLDoc() Put "books.xml" Load xmlDoc
- Create a new CDATA section node
- Append this new CDATA section node to the first <book> element
Traverse and add a CDATA section to all <book> elements:TIY
Create comment node
The createComment() method creates a new comment node.
xmlDoc=loadXMLDoc("books.xml"); newComment=xmlDoc.createComment("Revised March 2008"); x=xmlDoc.getElementsByTagName("book")[0]; x.appendChild(newComment);
Example explanation:
- By using loadXMLDoc() Put "books.xml" Load xmlDoc
- Create a new comment node
- Append this new comment node to the first <book> element
Loop through and add a comment node to all <book> elements:TIY
- Previous page DOM replace node
- Next page DOM add node