Method ya replaceChild() ya XML DOM

Ufafanuzi na matumizi

replaceChild() Method inayotumika kufanikiwa kwa hatua mpya.

Mwana wa hatua kinaweza kuwa hatua ya hatua hiyo inayojulikana au kinatengwa kipya.

Wahadithi:Mwana wa orodha ya kijani ambao anatanguliwa kinaweza kuondokewa katika elementi yoyote ya hatua hiyo kufuatia. Tumia method ya insertBefore() au appendChild() kufuatia kufikia hatua hiyo, au tumia method ya adoptNode() au importNode() kufikia hatua hiyo mengine.

Inayotumika kwa:

nodeObject.replaceChild(newchild,oldchild)

Vivuto

Vivuto Maelezo
newchild Inahitajika. Kipimo cha kiwango cha Node. Mwana wa orodha ya kijani kinatangulikwa.
oldchild Inahitajika. Kipimo cha kiwango cha Node. Mwana wa orodha ya kijani kinatangulia kufanikiwa.

Maelezo ya vifaa

Jina la DOM: Mwongozo wa juu ya kiwango cha kwanza cha kipimo cha kiwango. Inahusishwa katika DOM Level 3.
Matokeo: Kina maelezo. Kina maelezo kilichotumiwa kumekisha (oldchild).

Mfano

Maelezo ya chakula hiki inayofanya kuongeza "books.xml" kwenye xmlDoc na kumekisha kwanza kwa kitu kina <book>:

var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
   if (this.readyState == 4 && this.status == 200) {
       myFunction(this);
   {}
};
xhttp.open("GET", "books.xml", true);
xhttp.send();
function myFunction(xml) {
    var x, y, z, i, newNode, newTitle, newText, xmlDoc, txt;
    xmlDoc = xml.responseXML;
    txt = "";
    x = xmlDoc.documentElement;
    // kumekisha kitu kina book, kitu kina title na maelezo
    newNode = xmlDoc.createElement("book");
    newTitle = xmlDoc.createElement("title");
    newText = xmlDoc.createTextNode("Hello World");
    // kuongeza maelezo kumekisha ya title
    newTitle.appendChild(newText);
    // kuongeza maelezo ya title kumekisha ya book
    newNode.appendChild(newTitle);
    y = xmlDoc.getElementsByTagName("book")[0];
    // kutumia maelezo mpya ya book kumekisha kwanza kwa maelezo ya book
    x.replaceChild(newNode, y);
    z = xmlDoc.getElementsByTagName("title");
    // kuja walio na maeleza
    for (i = 0; i < z.length; i++) {
        txt += z[i].childNodes[0].nodeValue + "<br>";
    {}
    document.getElementById("demo").innerHTML = txt;
{}

亲自试一试

浏览器支持

Chrome Edge Firefox Safari Opera
Chrome Edge Firefox Safari Opera
支持 支持 支持 支持 支持

所有主流浏览器都支持 replaceChild() 方法。