XML Tutorial

XML หน้าแรก บทนำ XML XML วิธีใช้งาน XML Tree ไวยากรณ์ XML องค์ประกอบ XML คุณสมบัติ XML XML เนมสเปซ จอแสดงผล XML XML HttpRequest XML Parser XML DOM XML XPath XML XSLT XML XQuery XML XLink เครื่องมือตรวจสอบ XML XML DTD XML Schema XML Server ตัวอย่าง XML แบบทดสอบ XML ใบรับรอง XML

XML AJAX

บทนำ AJAX AJAX XMLHttp คำขอ AJAX การตอบสนอง AJAX ไฟล์ AJAX XML AJAX PHP AJAX ASP ฐานข้อมูล AJAX แอปพลิเคชัน AJAX ตัวอย่าง AJAX

XML DOM

บทนำ DOM โหนด DOM การเข้าถึง DOM ข้อมูลโหนด DOM รายการโหนด DOM DOM Traversing การนำทาง DOM DOM รับค่า DOM เปลี่ยนโหนด DOM ลบโหนด DOM แทนที่โหนด DOM สร้างโหนด DOM เพิ่มโหนด DOM โคลนโหนด ตัวอย่าง DOM

บทช่วย สอนXPath

บทนำ XPath โหนด XPath ไวยากรณ์ XPath แกน XPath ตัวดำเนินการ XPath ตัวอย่าง XPath

กวดวิชาXSLT

บทนำ XSLT ภาษา XSL การแปลง XSLT XSLT <แม่แบบ> XSLT <ค่าของ> XSLT <for-each> XSLT <sort> XSLT <if> XSLT <เลือก> ใช้ XSLT XSLT บนไคลเอนต์ XSLT บนเซิร์ฟเวอร์ XSLT แก้ไข XML ตัวอย่าง XSLT

กวดวิชาXQuery

บทนำ XQuery ตัวอย่าง XQuery XQuery FLWOR XQuery HTML ข้อกำหนด XQuery ไวยากรณ์ XQuery XQuery เพิ่ม XQuery Select ฟังก์ชัน XQuery

XML DTD

บทนำ DTD บล็อกตัวต่อ DTD องค์ประกอบ DTD คุณสมบัติ DTD องค์ประกอบ DTD เทียบกับ Attr หน่วยงาน DTD ตัวอย่าง DTD

ส คีมา XSD

บทนำ XSD XSD วิธีการ XSD <schema> องค์ประกอบ XSD แอตทริบิวต์ XSD ข้อจำกัด XSD

XSD Complex

องค์ประกอบ XSD XSD ว่างเปล่า องค์ประกอบ XSD เท่านั้น XSD Text เท่านั้น XSD ผสม ตัวชี้วัด XSD XSD <ใด ๆ> XSD <anyAttribute> การทดแทน XSD XSD ตัวอย่าง

ข้อมูลXSD

XSD สตริง วันที่ XSD XSD ตัวเลข XSD เบ็ดเตล็ด ข้อมูลอ้างอิง XSD

บริการเว็บ

XML Services XML WSDL XML SOAP XML RDF XML RSS

อ้างอิง

ประเภทโหนด DOM โหนด DOM DOM NodeList DOM NamedNodeMap เอกสาร DOM องค์ประกอบ DOM แอตทริบิวต์ DOM ข้อความ DOM DOM CDATA ความคิดเห็นของ DOM DOM XMLHttpRequest DOM Parser องค์ประกอบ XSLT ฟังก์ชัน XSLT/XPath

รายการโหนด XML DOM


รายการโหนดถูกส่งกลับโดยเมธอด getElementsByTagName() และคุณสมบัติ childNodes


ลองด้วยตัวคุณเอง - ตัวอย่าง

ตัวอย่างด้าน ล่างใช้ไฟล์ XML books.xml


ตัวอย่างนี้ใช้วิธี getElementsByTagName() เพื่อรับข้อความจากองค์ประกอบ <title> แรกใน "books.xml"


ตัวอย่างนี้ใช้รายการโหนดและคุณสมบัติความยาวเพื่อวนซ้ำองค์ประกอบ <title> ทั้งหมดใน "books.xml"


ตัวอย่างนี้ใช้รายการแอตทริบิวต์เพื่อรับแอตทริบิวต์จากองค์ประกอบ <book> แรกใน "books.xml"

×

หัวข้อ


รายการโหนด DOM

เมื่อใช้คุณสมบัติหรือเมธอด เช่น childNodes หรือ getElementsByTagName() อ็อบเจ็กต์รายการโหนดจะถูกส่งคืน

โหนดรายการวัตถุแสดงถึงรายการของโหนด ในลำดับเดียวกับใน XML

โหนดในรายการโหนดสามารถเข้าถึงได้ด้วยหมายเลขดัชนีเริ่มต้นจาก 0

รูปภาพต่อไปนี้แสดงรายการโหนดขององค์ประกอบ <title> ใน " books.xml ":

รายการโหนด DOM

สมมติว่า "books.xml" ถูกโหลดลงในตัวแปร xmlDoc

โค้ดส่วนนี้ส่งคืนรายการโหนดขององค์ประกอบชื่อใน "books.xml":

x = xmlDoc.getElementsByTagName("title");

หลังจากดำเนินการคำสั่งข้างต้น x เป็นอ็อบเจ็กต์รายการโหนด

โค้ดย่อยต่อไปนี้จะส่งคืนข้อความจากองค์ประกอบ <title> แรกในรายการโหนด (x):

ตัวอย่าง

var txt = x[0].childNodes[0].nodeValue;

หลังจากดำเนินการตามคำสั่งข้างต้นแล้ว txt = "ภาษาอิตาลีทุกวัน"



ความยาวของรายการโหนด

โหนดรายการวัตถุทำให้ตัวเองทันสมัยอยู่เสมอ หากองค์ประกอบถูกลบหรือเพิ่ม รายการจะถูกอัปเดตโดยอัตโนมัติ

คุณสมบัติความยาวของรายการโหนดคือจำนวนโหนดในรายการ

โค้ดส่วนนี้ส่งคืนจำนวนองค์ประกอบ <title> ใน "books.xml":

x = xmlDoc.getElementsByTagName('title').length;

หลังจากดำเนินการตามคำสั่งข้างต้น ค่าของ x จะเป็น 4

ความยาวของรายการโหนดสามารถใช้เพื่อวนซ้ำองค์ประกอบทั้งหมดในรายการ

โค้ดแฟรกเมนต์นี้ใช้คุณสมบัติ length เพื่อวนซ้ำรายการ <title> องค์ประกอบ:

ตัวอย่าง

x = xmlDoc.getElementsByTagName('title');
xLen = x.length;

for (i = 0; i <xLen; i++) {
    txt += x[i].childNodes[0].nodeValue) + " ";
}

เอาท์พุท:

Everyday Italian
Harry Potter
XQuery Kick Start
Learning XML

ตัวอย่างอธิบาย:

  1. สมมติว่า " books.xml " ถูกโหลดลงใน xmlDoc
  2. ตั้งค่าตัวแปร x เพื่อเก็บรายการโหนดขององค์ประกอบชื่อทั้งหมด
  3. รวบรวมค่าโหนดข้อความจาก <title> องค์ประกอบ

รายการแอตทริบิวต์ DOM (แผนผังโหนดที่มีชื่อ)

คุณสมบัติแอตทริบิวต์ของโหนดองค์ประกอบส่งคืนรายการโหนดแอตทริบิวต์

นี่เรียกว่าโหนดแผนที่ที่มีชื่อ และคล้ายกับรายการโหนด ยกเว้นวิธีการและคุณสมบัติบางอย่างที่แตกต่างกัน

รายการแอตทริบิวต์ทำให้ตัวเองเป็นปัจจุบันอยู่เสมอ หากแอตทริบิวต์ถูกลบหรือเพิ่ม รายการจะถูกอัปเดตโดยอัตโนมัติ

โค้ดส่วนนี้ส่งคืนรายการโหนดแอตทริบิวต์จากองค์ประกอบ <book> แรกใน "books.xml":

x = xmlDoc.getElementsByTagName('book')[0].attributes;

หลังจากรันโค้ดด้านบนแล้ว x.length = คือจำนวนแอตทริบิวต์และ x.getNamedItem() สามารถใช้เพื่อส่งคืนโหนดแอตทริบิวต์ได้

โค้ดส่วนนี้รับค่าของแอตทริบิวต์ "หมวดหมู่" และจำนวนแอตทริบิวต์ของหนังสือ:

ตัวอย่าง

x = xmlDoc.getElementsByTagName("book")[0].attributes;

txt = x.getNamedItem("category").nodeValue + " " + x.length;

เอาท์พุท:

cooking 1

ตัวอย่างอธิบาย:

  1. สมมติว่า " books.xml " ถูกโหลดลงใน xmlDoc
  2. ตั้งค่าตัวแปร x เพื่อเก็บรายการแอตทริบิวต์ทั้งหมดของ <หนังสือ> องค์ประกอบ
  3. รับค่าของแอตทริบิวต์ "หมวดหมู่" และความยาวของรายการแอตทริบิวต์