Phương pháp XML DOM cloneNode()

Tài liệu tham khảo đối tượng Node

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

Phương pháp cloneNode() có thể tạo bản sao chính xác của phần tử được chỉ định.

Phương pháp này có thể trả về phần tử được sao chép.

Cú pháp:

nodeObject.cloneNode(include_all)
Tham số Mô tả
include_all Bắt buộc. Nếu tham số logic được thiết lập là true, thì phần tử được sao chép sẽ sao chép tất cả các con của phần tử gốc.

Giá trị trả về

Bản sao của phần tử hiện tại.

Giải thích

Phương pháp này sẽ sao chép và trả về bản sao của phần tử được gọi. Nếu tham số được truyền vào là true, nó cũng sẽ sao chép đệ quy tất cả các con của phần tử hiện tại. Ngược lại, nó chỉ sao chép phần tử hiện tại.

Phần tử được trả về không thuộc cây tài liệu, thuộc tính parentNode của nó là null.

Khi sao chép là phần tử Element, tất cả các thuộc tính của nó cũng sẽ được sao chép. Nhưng lưu ý, các hàm lắng nghe sự kiện được đăng ký trên phần tử hiện tại sẽ không được sao chép.

ví dụ

Trong tất cả các ví dụ, chúng ta sẽ sử dụng tệp XML books.xmlvà hàm JavaScript loadXMLDoc()

Mã đoạn sau có thể sao chép node <book> đầu tiên, sau đó thêm nó vào cuối danh sách các node:

xmlDoc=loadXMLDoc("books.xml");
var x=xmlDoc.getElementsByTagName('book')[0];
var cloneNode=x.cloneNode(true);
xmlDoc.documentElement.appendChild(cloneNode);
//Xuất ra tất cả các tiêu đề
var y=xmlDoc.getElementsByTagName("title");
for (i=0;i<y.length;i++)
  {
  document.write(y[i].childNodes[0].nodeValue);
  document.write("<br />");
  }

Kết quả xuất ra:

Everyday Italian
Harry Potter
XQuery Kick Start
Học XML
Everyday Italian

Tài liệu tham khảo đối tượng Node