XML DOM คุณสมบัติLastChild
❮ วัตถุธาตุ
ตัวอย่าง
โค้ดย่อยต่อไปนี้โหลด " books.xml " ลงใน xmlDoc และรับโหนดย่อยสุดท้าย:
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
myFunction(this);
}
};
xhttp.open("GET",
"books.xml", true);
xhttp.send();
// Check if the last node is an
element node
function get_lastchild(n) {
var x =
n.lastChild;
while (x.nodeType != 1) {
x = x.previousSibling;
}
return
x;
}
function myFunction(xml) {
var x, i,
txt, firstNode, xmlDoc;
xmlDoc = xml.responseXML;
x = xmlDoc.documentElement;
txt = "";
firstNode = get_lastchild(x);
for (i = 0; i < firstNode.childNodes.length; i++) {
if (firstNode.childNodes[i].nodeType == 1) {
//Process only element nodes
txt += firstNode.childNodes[i].nodeName +
" = " +
firstNode.childNodes[i].childNodes[0].nodeValue + "<br>";
}
}
document.getElementById("demo").innerHTML
= txt;
}
ผลลัพธ์ของโค้ดด้านบนจะเป็น:
title = Learning XML
author = Erik T. Ray
year = 2003
price = 39.95
ความหมายและการใช้งาน
คุณสมบัติlastChildส่งคืนโหนดย่อยสุดท้ายขององค์ประกอบที่เลือก
ถ้าโหนดที่เลือกไม่มีชายด์ คุณสมบัตินี้จะคืนค่า NULL
ไวยากรณ์
elementNode.lastChild
เคล็ดลับและหมายเหตุ
หมายเหตุ: Firefox และเบราว์เซอร์อื่นๆ ส่วนใหญ่จะถือว่าช่องว่างสีขาวหรือบรรทัดใหม่เป็นโหนดข้อความ แต่ Internet Explorer จะไม่ดำเนินการ ในตัวอย่างด้านล่าง เรามีฟังก์ชันที่ตรวจสอบประเภทโหนดของโหนดย่อยสุดท้าย
โหนดองค์ประกอบมีโหนดประเภท 1 ดังนั้นหากโหนดย่อยสุดท้ายไม่ใช่โหนดองค์ประกอบ โหนดจะย้ายไปยังโหนดก่อนหน้า และตรวจสอบว่าโหนดนี้เป็นโหนดองค์ประกอบหรือไม่ สิ่งนี้จะดำเนินต่อไปจนกว่าจะพบโหนดย่อยสุดท้าย (ซึ่งจะต้องเป็นโหนดองค์ประกอบ) ด้วยวิธีนี้ ผลลัพธ์จะถูกต้องในทุกเบราว์เซอร์
เคล็ดลับ:หากต้องการอ่านเพิ่มเติมเกี่ยวกับความแตกต่างระหว่างเบราว์เซอร์ โปรดไป ที่บท เบราว์เซอร์ DOM ของ เราในบทช่วยสอน XML DOM
❮ วัตถุธาตุ