XML DOM nodeType 属性
定义和用法
nodeType
属性返回所选节点的节点类型。
语法
elementNode.nodeType
节点编号: | 节点名称: |
---|---|
1 | Element |
2 | Attribute |
3 | Text |
4 | CDATA Section |
5 | entity reference |
6 | entity |
7 | processing instruction |
8 | comment |
9 | document |
10 | document type |
11 | document fragment |
12 | notation |
ตัวอย่าง
ตัวอย่าง 1
รหัสใต้นี้จะนำ "books.xml" โหลดเข้าไปใน xmlDoc และดึงรูปแบบของตัวแปลแรกใน <title>:
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; var x = xmlDoc.getElementsByTagName("title")[0]; document.getElementById("demo").innerHTML = x.nodeType; }
ตัวอย่าง 2
ข้ามตัวแปลข้อความว่าง:
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 get_firstchild(n) { var x = n.firstChild; while (x.nodeType != 1) { x = x.nextSibling; } return x; } function myFunction(xml) { var x, i, txt, xmlDoc, firstNode, xmlDoc; xmlDoc = xml.responseXML; x = xmlDoc.documentElement; txt = ""; firstNode = get_firstchild(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; }