XML DOM erstat knude
- Forrige side DOM sletter noder
- Næste side DOM opretter noder
replaceChild() metoden erstatter den angivne knude.
nodeValue-egenskaben erstatter teksten i en tekstknude.
Eksempel
Følgende eksempel bruger en XML-fil books.xml.
Funktion loadXMLDoc()، placeret i ekstern JavaScript, bruges til at indlæse XML-filer.
- Erstat elementknude
- Dette eksempel bruger replaceChild() til at erstatte den første <book>-knude.
- Erstat data i en tekstknude
- Dette eksempel bruger nodeValue-egenskaben til at erstatte data i en tekstknude.
Erstat elementknude
replaceChild() metoden bruges til at erstatte knuder.
Følgende kodeblok erstatter den første <book>-element
xmlDoc=loadXMLDoc("books.xml"); x = xmlDoc.documentElement; // Opret en book-element, en title-element og en tekstknude newNode = xmlDoc.createElement("book"); newTitle = xmlDoc.createElement("title"); newText = xmlDoc.createTextNode("Hello World"); // Tilføj tekstknude til title-knude newTitle.appendChild(newText); // Tilføj title-knude til book-knude newNode.appendChild(newTitle); y = xmlDoc.getElementsByTagName("book")[0]; // Brug denne nye knude til at erstatte den første book-knude x.replaceChild(newNode, y);
Eksempel forklaring:
- Ved hjælp af loadXMLDoc() Brug "books.xml" Indlæs i xmlDoc"
- Opret en ny elementknude <book>
- Opret en ny elementknude <title>
- Opret en ny tekstknude med teksten "Hello World"
- Tilføj denne nye tekstknude til den nye elementknude <title>
- Tilføj denne nye elementknude <title> til den nye elementknude <book>
- Erstat den første <book>-elementknude med en ny <book>-elementknude
Erstat data i en tekstknude
replaceData() metoden bruges til at erstatte data i en tekstknude.
replaceData() metoden har tre parametre:
- offset - hvor mange tegn der skal erstattes fra. Offset-værdien starter ved 0.
- length - antallet af tegn, der skal erstattes
- string - den streng, der skal indsættes
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title")[0].childNodes[0]; x.replaceData(0,8,"hello");
Eksempel forklaring:
- Ved hjælp af loadXMLDoc() Brug "books.xml" Indlæs i xmlDoc"
- Få den første <title>-elementnodes tekstnode
- Brug replaceData-metoden til at erstatte de første 8 tegn i tekstnoden med "hello"
Brug nodeValue-egenskaben
Det er lettere at erstatte tekstnodestandard ved hjælp af nodeValue-egenskaben.
Følgende kodeudsnit vil erstatte tekstnodestandarden i det første <title>-element med "Easy Italian":
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title")[0].childNodes[0]; x.nodeValue="Hello World";
Eksempel forklaring:
- Ved hjælp af loadXMLDoc() Brug "books.xml" Indlæs i xmlDoc"
- Få den første <title>-elementnodes tekstnode
- Brug nodeValue-egenskaben til at ændre teksten på denne tekstnode
Du kan Ændre node Læs mere om ændring af nodestandard i dette afsnit.
- Forrige side DOM sletter noder
- Næste side DOM opretter noder