XML DOM solmun korvaaminen

replaceChild() -metodi korvaa määritellyn solmun.

nodeValue -ominaisuus korvaa tekstisolmun tekstin.

Esimerkki

Seuraava esimerkki käyttää XML-tiedostoa books.xml.

Funktiokirjasto loadXMLDoc(),sijaitsee ulkoisessa JavaScriptissä, ja se ladata XML-tiedoston.

Korvaa elementtisolmu
Tässä esimerkissä käytetään replaceChild() -metodia korvata ensimmäistä <book> -solmua.
Korvaa tekstipisteen dataa
Tässä esimerkissä käytetään nodeValue -ominaisuutta korvata tekstisolmun dataa.

Korvaa elementtisolmu

replaceChild() -metodi korvaa solmun.

Seuraava koodinpätkä korvaa ensimmäisen <book> -elementin:

xmlDoc=loadXMLDoc("books.xml");
x = xmlDoc.documentElement;
//Luo book-elementti, title-elementti ja tekstipiste
newNode = xmlDoc.createElement("book");
newTitle = xmlDoc.createElement("title");
newText = xmlDoc.createTextNode("Hello World");
//Lisää tekstipiste title-solmulle
newTitle.appendChild(newText);
//Lisää title-solmu book-solmulle
newNode.appendChild(newTitle);
y = xmlDoc.getElementsByTagName("book")[0];
//Korvaa tämä uusi solmu ensimmäisellä book -solmulla
x.replaceChild(newNode, y);

Esimerkki selityksestä:

  • Käyttämällä loadXMLDoc() Aseta "books.xml" Lataa xmlDoc:iin
  • Luo uusi elementtipiste <book>
  • Luo uusi elementtipiste <title>
  • Luo uusi tekstipiste, jolla on teksti "Hello World"
  • Lisää uudelle elementtipisteelle <title> tämä uusi tekstipiste
  • Lisää uudelle elementtipisteelle <book> tämä uusi elementtipiste <title>
  • Korvaa ensimmäisen <book> -elementin uudella <book> -elementillä

TIY

Korvaa tekstipisteen dataa

replaceData() metodi korvaa tekstipisteen dataa.

replaceData() -menetelmällä on kolme parametria:

  • offset - Korvaamisen aloituskohta. Offset-arvo alkaa 0:sta.
  • length - Korvattavien merkkien määrä
  • string - Lisättävä merkkijono
xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];
x.replaceData(0,8,"hello");

Esimerkki selityksestä:

  • Käyttämällä loadXMLDoc() Aseta "books.xml" Lataa xmlDoc:iin
  • Hanki ensimmäisen <title>-elementin tekstisolmu
  • Korvaa tekstisolmun ensimmäiset 8 merkkiä "hello" käyttämällä replaceData-metodia

TIY

Käytä nodeValue-ominaisuutta

On helpompaa korvata tekstisolmun data nodeValue-ominaisuuden avulla.

Seuraava koodipala korvaa ensimmäisen <title>-elementin tekstisolmun arvon "Easy Italian":llä:

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];
x.nodeValue="Hello World";

Esimerkki selityksestä:

  • Käyttämällä loadXMLDoc() Aseta "books.xml" Lataa xmlDoc:iin
  • Hanki ensimmäisen <title>-elementin tekstisolmu
  • Muuta tätä tekstit절män tekstiä nodeValue-ominaisuuden avulla

TIY

Voit muuttaa Muuta solmu Tässä luvussa voit lukea lisää solmun arvojen muuttamisesta.