XML DOM erstat knude

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

TIY

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"

TIY

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

TIY

Du kan Ændre node Læs mere om ændring af nodestandard i dette afsnit.