Phương thức cloneNode() của XML DOM

Định nghĩa và cách sử dụng

cloneNode() Phương thức tạo bản sao của node và trả về node mới được sao chép.

Cú pháp

nodeObject.cloneNode(deep)

Tham số

Tham số Mô tả
deep

Giá trị布尔.

  • true - Sao chép node, thuộc tính của nó và后代.
  • false - Sao chép node và thuộc tính của nó.

Chi tiết kỹ thuật

Phiên bản DOM: Core Level 1 Node Object
Trả về giá trị: Object Node. Node được sao chép.

Thực例

Mã dưới đây tải "books.xml", sao chép nút <book> đầu tiên, sau đó thêm nó vào cuối danh sách nút:

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, cloneNode, i, xmlDoc, txt;
    xmlDoc = xml.responseXML;
    txt = "";
    x = xmlDoc.getElementsByTagName('book')[0];
    cloneNode = x.cloneNode(true);
    xmlDoc.documentElement.appendChild(cloneNode);
    // Xuất ra tất cả các title
    y = xmlDoc.getElementsByTagName("title");
    for (i = 0; i < y.length; i++) {
        txt += y[i].childNodes[0].nodeValue + "<br>";
    }
    document.getElementById("demo").innerHTML = txt;
}

Thử ngay

Hỗ trợ trình duyệt

Chrome Edge Firefox Safari Opera
Chrome Edge Firefox Safari Opera
Hỗ trợ Hỗ trợ Hỗ trợ Hỗ trợ Hỗ trợ

Tất cả các trình duyệt phổ biến đều hỗ trợ phương thức cloneNode().