XML DOM replaceChild() 方法

定义和用法

replaceChild() Metode untuk mengganti satu node anak dengan node lain.

Pada saat sukses, fungsi ini kembalikan node yang diganti, pada saat gagal kembalikan NULL

Sintaks

elementNode.replaceChild(new_node,old_node)
Param Deskripsi
new_node Wajib. Menentukan node yang akan digunakan untuk ganti.
old_node Wajib. Menentukan node anak yang akan diganti.

Contoh

Berikut adalah kode yang meng-load "books.xml" ke xmlDoc dan mengganti elemen <book> pertama:

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;
    // Membuat elemen book, elemen title, dan node teks
    newNode = xmlDoc.createElement("book");
    newTitle = xmlDoc.createElement("title");
    newText = xmlDoc.createTextNode("Hello World");
    // Menambahkan node teks ke node title
    newTitle.appendChild(newText);
    // Menambahkan node title ke node book
    newNode.appendChild(newTitle);
    y = xmlDoc.getElementsByTagName("book")[0];
    // Mengganti node book baru ini untuk node book pertama
    x.replaceChild(newNode, y);
    z = xmlDoc.getElementsByTagName("title");
    // 输出所有 title
    for (i = 0; i < z.length; i++) {
        txt += z[i].childNodes[0].nodeValue + "<br>";
    }
    document.getElementById("demo").innerHTML = txt;
}

亲自试一试