XML DOM appendChild() -metodi

Node-objektin viittausopas

Määrittely ja käyttö

appendChild() -metodi voi lisätä uuden lapsisolmun solmun lapsisolmien luetteloon.

Tämä metodi voi palauttaa tämän uuden lapsisolmun.

Syntaksi:

appendChild(newchild)
Parametri Kuvaus
newchild Lisätty solmu

Palautusarvo

Lisätty solmu.

Kuvaus

Tämä metodi lisää solmun newchild asiakirjaan, tekemällä siitä nykyisen solmun viimeisen lapsisolmun.

Jos newchild on jo olemassa asiakirjapuussa, se poistetaan asiakirjapuusta ja lisätään uuteen paikkaan. Jos newchild on DocumentFragment-solmu, sitä ei lisätä suoraan, vaan sen lapsisolut lisätään järjestyksessä nykyisen solmun childNodes[]-taulukkoon.

Huomaa, että asiakirjasta tuleva solmu (tai asiakirjalla luotu solmu) ei voi lisätä toiseen asiakirjaan. Tämä tarkoittaa, että newchildin ownerDocument-ominaisuuden täytyy olla sama kuin nykyisen solmun ownerDocument-ominaisuus.

Esimerkki

Seuraava funktio lisää asiakirjan loppuun uuden kappaleen:

function appendMessage (message) {
  var pElement = document.createElement("p");
  var messageNode = document.createTextNode(message);
  pElement.appendChild(messageNode);
  document.body.appendChild(pElement);
}

Esimerkki

Kaikissa esimerkeissä käytämme XML-tiedostoa books.xmlja JavaScript-funktio loadXMLDoc()

Seuraava koodipätkä voi luoda ja lisätä ensimmäiselle <book> -elementille solmun, ja sitten tulostaa ensimmäisen <book> -elementin kaikki lapsisolut:

xmlDoc=loadXMLDoc("books.xml");
var newel=xmlDoc.createElement('edition');
var newtext=xmlDoc.createTextNode('First');
newel.appendChild(newtext);
var x=xmlDoc.getElementsByTagName('book')[0];
x.appendChild(newel);;
var y=x.childNodes;
for (var i=0;i<y.length;i++)
  { 
  //Näytä vain elementti solmut
  if (y[i].nodeType==1)
    { 
    document.write(y[i].nodeName);
    document.write("<br />");
    } 
  }

Tulostus:

title
author
year
price
edition

Huomautus:Internet Explorer ignoroii välit索muun luodut tyhjät tekstit solmut (esim. rivinvaihtomerkit), mutta Mozilla ei tee niin. Siksi alla olevassa esimerkissä käsittelemme vain elementti solmuja (elementti solmujen nodeType=1).

Vinkki:Lisätietoja XML DOM:n eroista IE ja Mozilla-selaimien välillä löydät DOM-selain Luku.

Node-objektin viittausopas