XML DOM โคลนตัวเลือก
- หน้าก่อนหน้า DOM เพิ่มโหลดข้อมูล
- หน้าต่อไป DOM HttpRequest
ตัวอย่าง
ตัวอย่างดังนี้ใช้ XML ไฟล์ books.xml.
ฟังก์ชัน loadXMLDoc()ที่ตั้งอยู่ด้านนอก JavaScript สำหรับโหลดเอกสาร XML
- คัดลอกตัวแทน และแอนนาพนันท์มันไปที่ตัวแทนที่มีอยู่แล้ว
- ตัวอย่างนี้ใช้ cloneNode() ที่จะคัดลอกตัวแทน และแอนนาพนันท์มันไปที่ตัวแทนรίζอันแรกของเอกสาร XML
คัดลอกตัวแทน
วิธี cloneNode() ทำการสร้างตัวแทนที่คัดลอกของตัวแทนที่กำหนด
วิธี cloneNode() มีตัวแปรหนึ่ง (true หรือ false) ที่บอกว่าตัวแทนที่คัดลอกมีทั้งหมดคุณสมบัติและลูกตัวแทนของตัวแทนเดิมหรือไม่
รหัสที่ต่อไปนี้คัดลอกจาก <book> ตัวแทนแรก และแอนนาพนันท์มันไปที่ตัวแทนรίζอันแรกของเอกสาร
xmlDoc=loadXMLDoc("books.xml"); oldNode=xmlDoc.getElementsByTagName('book')[0]; newNode=oldNode.cloneNode(true); xmlDoc.documentElement.appendChild(newNode); //Output all titles y=xmlDoc.getElementsByTagName("title"); for (i=0;i<y.length;i++) { document.write(y[i].childNodes[0].nodeValue); document.write("<br />"); }
ออกมาเป็น:
Harry Potter Everyday Italian XQuery Kick Start Learning XML Harry Potter
ตัวอย่างที่ชี้แจง:
- โดยใช้ loadXMLDoc() บวก "books.xml" โหลด xmlDoc ขึ้น
- หาโหลดข้อมูลที่ต้องการคัดลอก
- โดยใช้วิธี cloneNode โค้ดโหลดยัง "newNode"
- เพิ่มโหลดข้อมูลใหม่ในต้นของต้นของเอกสาร XML
- แสดงทั้งหมดของ book ทั้งหมดที่มี title ในเอกสาร
- หน้าก่อนหน้า DOM เพิ่มโหลดข้อมูล
- หน้าต่อไป DOM HttpRequest