XML DOM cloneNode() -metodi
Määrittely ja käyttö
cloneNode() -metodi voi luoda määritetyn solmun tarkan kopioksi.
Tämä metodi voi palauttaa kopioidun solmun.
Syntaksi:
nodeObject.cloneNode(include_all)
Parametri | Kuvaus |
---|---|
include_all | Välttämätön. Jos looginen parametri asetetaan totiseksi, kloonatut solmut kloonaa alkuperäisen solmun kaikki lapsisolmut. |
Palautusarvo
Nykyisen solmun kopiointi.
Selitys
Tämä metodi kopioidaan ja palauttaa kutsuvan solmun kopioksi. Jos sille annettu parametri on true, se kopioidaan myös rekursiivisesti nykyisen solmun kaikki jälkeläissolmut. Muussa tapauksessa se kopioidaan vain nykyinen solmu.
Palautettu solmu ei kuulu dokumenttipuuhun, sen parentNode-ominaisuus on null.
Kun kopioitava on Element-elementti, kaikki sen ominaisuudet kopioidaan. On kuitenkin huomattava, että nykyisessä solmussa rekisteröidyt tapahtumankuuntelijafunktiot eivät kopioidu.
Esimerkki
Kaikissa esimerkeissä käytämme XML-tiedostoa books.xml, ja JavaScript-funktiot loadXMLDoc().
Seuraava koodinpätkä voi kloonaus ensimmäisen <book>-solmun ja lisätä sen solmujen luetteloon loppuun:
xmlDoc=loadXMLDoc("books.xml");
var x=xmlDoc.getElementsByTagName('book')[0];
var cloneNode=x.cloneNode(true)
;
xmlDoc.documentElement.appendChild(cloneNode);
// Tulosta kaikki otsikot
var y=xmlDoc.getElementsByTagName("title");
for (i=0;i<y.length;i++)
{
document.write(y[i].childNodes[0].nodeValue);
document.write("<br />");
}
Tulostus:
Everyday Italian Harry Potter XQuery Kick Start Learning XML Everyday Italian