XML DOM ການສອນ
ວ່າເປັນຫຍັງ DOM?
DOM ອະທິບາຍວິທີການການເຂົ້າເຖິງ ແລະ ການປະຕິບັດບັນທຶກຄວາມ:
“W3C Document Object Model (DOM) ແມ່ນອີກຄຳສັບສຳລັບອຸປະກອນບໍ່ພົວພັນກັບອຸປະກອນ ແລະ ພາສາທີ່ອະນຸຍາດໃຫ້ໂປຣກິດ ແລະ ສະແດງຄວາມຄິດຂອງບັນທຶກຄວາມ ຄວາມສ້າງຄວາມຄິດ ແລະ ການຈັດຕັ້ງທຳມະຊາດ.”
HTML DOM ອະທິບາຍວິທີການການເຂົ້າເຖິງ ແລະ ການປະຕິບັດ HTML ທີ່ມີມາດຕະຖານ. ມັນຈະສະແດງ HTML ບັນທຶກຄວາມຫຼາຍຄວາມວ່າເຮັດໃຫ້ມີພາບຕົວຢູ່ທີ່ຮູບຮ່າງຕົ້ນຖິ່ນ.
XML DOM ອະທິບາຍວິທີການການເຂົ້າເຖິງ ແລະ ການປະຕິບັດ XML ທີ່ມີມາດຕະຖານ. ມັນຈະສະແດງ XML ບັນທຶກຄວາມຫຼາຍຄວາມວ່າເຮັດໃຫ້ມີພາບຕົວຢູ່ທີ່ຮູບຮ່າງຕົ້ນຖິ່ນ.
ສຳລັບທຸກຄົນທີ່ໃຊ້ HTML ຫຼື XML ຂອງສາມາດທີ່ເຂົ້າເຖິງ DOM ແມ່ນຈຳເປັນ.
HTML DOM
ທຸກປະກອບ HTML ສາມາດເຂົ້າເຖິງໂດຍ HTML DOM.
ບົດສະຫຼຸບ 1
ບົດສະຫຼຸບນີ້ຈະປ່ຽນຄວາມຂອງ HTML ປະກອບສານທີ່ມີ id="demo":
<h1 id="demo">ນີ້ເປັນຫົວຂໍ້</h1> <p id="demo"></p> document.getElementById("demo").innerHTML = "Hello World!"; xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue;
ບົດສະຫຼຸບ 2
ບົດສະຫຼຸບນີ້ຈະປ່ຽນຄວາມຂອງ <h1> ທຳອິດໃນ HTML ຂອງທ່ານ:
<h1>ນີ້ເປັນຫົວຂໍ້</h1> <h1>ນີ້ເປັນຫົວຂໍ້</h1> <p id="demo"></p> document.getElementsByTagName("h1")[0].innerHTML = "Hello World!"; xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue;
ເຫັນດີ:ເຖິງວ່າ HTML ຂອງທ່ານພຽງແຕ່ມີ <h1> ປະກອບສານດຽວ, ທ່ານກໍ່ຕ້ອງກຳນົດບັນນາທິບັນ [0] ຍ້ອນວ່າ getElementsByTagName() ມີຄວາມສຳຄັນຄືກັນກັບສະໜາມ.
ທ່ານສາມາດຮຽນຫຼາຍກ່ຽວກັບ HTML DOM ໃນຫຼັກສູດ JavaScript ຂອງພວກເຮົາ.
XML DOM
ທຸກປະກອບສານ XML ສາມາດເຂົ້າເຖິງໄດ້ຜ່ານ XML DOM.
XML DOM ແມ່ນ:
- ມາດຕະຖານປະກອບສານ XML
- ມາດຕະຖານຄົ້ນຫາຂໍ້ຄວາມ XML
- ບໍ່ຕິດຕໍ່ວັດຖຸ ແລະ ພາສາ
- ມາດຕະຖານ W3C
ບອກກັບວ່າ: XML DOM ແມ່ນກົດລະບຽບຂອງວິທີການຄົ້ນຫາ, ປ່ຽນ, ສະເໜີ ຫຼື ຖອນ XML ປະກອບສານ.
ຄົ້ນຫາຄວາມຂອງ XML ປະກອບສານ.
ບົດສະຫຼຸບນີ້ຈະຊອກຫາຄວາມຂອງ ຢູ່ <title> ທຳອິດໃນ XML ທີ່ຖືກອອກໄປ:
ນັກການຄົ້ນຄວ້າ
txt = xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue;
ເລື່ອງຫາ XML ທີ່ຖືກອອກໄປ.
XML ທີ່ນຳໃຊ້ໃນບົດສະຫຼຸບນີ້ແມ່ນ books.xml.
ບົດສະຫຼຸບນີ້ຈະ "books.xml" ອອກໃນ xmlDoc ແລະ ຊອກຫາຄວາມຂອງ ຢູ່ <title> ທຳອິດໃນ books.xml:
ນັກການຄົ້ນຄວ້າ
<!DOCTYPE html> ຄວາມຄິດ <html> <body> <p id="demo"></p> 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 xmlDoc = xml.responseXML; xmlDoc = parser.parseFromString(text,"text/xml"); document.getElementById("demo").innerHTML = } xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue; </script> </body>
ການອະທິບາຍຕົວຢ່າງ
xmlDoc
- XML DOM ບັນຊີທີ່ຖືກສ້າງໂດຍກົນປະສົມgetElementsByTagName("title")[0]
- ຊອກຫົວເຂົາ <title> ທີ່ທໍາອິດchildNodes[0]
- ຫົວເຂົາທີ່ເປັນຫົວເຂົາບັນຊີທີ່ທໍາອິດຂອງ <title>nodeValue
- ຄວາມຄິດຂອງຫົວເຂົາ (ຄວາມຄິດແບບຕົວເລື່ອງ)
ການນຳມາ XML ຄວາມສັບສົນ
ການນຳມາສະໜັບສະໜູນ XML DOM ບັນຊີຄວາມສັບສົນ, ແລະໃຊ້ JavaScript ທີ່ຈະນຳມາຊອກຂໍ້ມູນຈາກນັ້ນ:
ນັກການຄົ້ນຄວ້າ
ຄວາມຄິດ <html> <body> <p id="demo"></p> <script> var text, parser, xmlDoc; text = "<bookstore><book>" + "<title>雅舍谈吃</title>" + "<author>梁实秋</author>" + "<year>2013</year>" + "</book></bookstore>"; parser = new DOMParser(); xmlDoc = parser.parseFromString(text,"text/xml"); document.getElementById("demo").innerHTML = xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue; </script> </body>
ການສຶກສາສຳລັບຕົວຊີວິດ
ຄູ່ມືການກົດຫມາຍ
DOM ສະແດງຄູ່ມືການກົດຫມາຍທີ່ຖືກກໍານົດເປັນປະເພດທີ່ມັກຂອງກົນລະຍຸດ. DOM ຈະສ້າງ XML ວ່າຫົວເຂົາບັນຊີອອກຈາກ JavaScript ຫຼືພິມມອງອື່ນໆ. ໃນການສະໜັບສະໜູນນີ້, ພວກເຮົາໃຊ້ JavaScript.
ປະເພດປົກກະຕິເປັນສິ່ງທີ່ມັນ (ເປັນຕົວຢ່າງ nodename ຖື "book").
ກົນລະຍຸດປົກກະຕິເປັນສິ່ງທີ່ສາມາດເຮັດ (ເປັນຕົວຢ່າງການລົບ "book" ດັ່ງກ່າວ).
XML DOM ປະເພດ
ນີ້ເປັນບາງປະເພດທີ່ປະກອບດ້ວຍ DOM:
- x.nodeName - ຊື່ຫົວເຂົາຂອງ x
- x.nodeValue - ຄວາມຄິດຂອງ x
- x.parentNode - ອົງການພໍ່ຂອງ x
- x.childNodes - ອົງການລູກຊົງຂອງ x
- x.attributes - ອົງການປະສົມຂອງ x
注释:ໃນລາຍການຂັ້ນວາງກ່າວນີ້ x ແມ່ນອົງການຫົວເຂົາບັນຊີ。
XML DOM 方法
- x.getElementsByTagName(name) - 获取拥有指定标签名称的所有元素
- x.appendChild(node) - 向 x 插入一个子节点
- x.removeChild(node) - 从 x 中删除子节点
注释:在上面的列表中,x
是一个节点对象。