XML DOM Get Node Value
Ang nodeValue attribute ay ginagamit upang hanapin ang teksto ng node na halaga.
Ang getAttribute() method ay nangangahulugan ng halaga ng attribute.
Sample
Ang halimbawa sa ibaba ay gumagamit ng XML file books.xml.
Function loadXMLDoc(),na matatagpuan sa labas ng JavaScript, na ginagamit upang i-load ang XML file.
- Hanapin ang halaga ng element
- Ang halimbawa na ito ay gumagamit ng getElementsByTagName() upang hanapin ang unang <title> element sa "books.xml".
- Hanapin ang halaga ng attribute
- Ang halimbawa na ito ay gumagamit ng getAttribute() method upang hanapin ang halaga ng attribute ng "lang" ng unang <title> element sa "books.xml".
Hanapin ang halaga ng element
Sa DOM, ang bawat komponente ay naging node. Ang element node ay walang teksto na halaga.
Ang teksto ng element node ay naka-imbak sa sub-node. Ang node na ito ay tinatawag na text node.
Ang paraan ng paghanap ng teksto ng element ay ang paghanap ng halaga ng sub-node (text node) na ito.
Hanapin ang halaga ng element
Ang getElementsByTagName() method ay nangangahulugan ng listahan ng mga node na may tag na hahalaga, kung saan ang pagkakasunod-sunod ng mga element ay ang kanilang pagkakaroon sa orihinal na dokumento.
Ang kodigo sa ibaba ay ginagamit sa pamamagitan ng: loadXMLDoc() 把 "books.xml"I-load sa xmlDoc, at hanapin ang unang <title> element:
xmlDoc=loadXMLDoc("books.xml"); x = xmlDoc.getElementsByTagName("title")[0];
Ang childNodes attribute ay nangangahulugan ng listahan ng mga sub-node. Ang <title> element ay may isang sub-node lamang, na isang text node.
Ang kodigo sa ibaba ay naghahanap ng text node ng <title> element:
x = xmlDoc.getElementsByTagName("title")[0]; y = x.childNodes[0];
Ang nodeValue attribute ay nangangahulugan ng teksto ng text node na halaga:
x = xmlDoc.getElementsByTagName("title")[0]; y = x.childNodes[0]; txt = y.nodeValue;
Ang resulta: txt = "Harry Potter"
Suriin ang lahat ng <title> element:TIY
Hanapin ang halaga ng attribute
Sa DOM, ang attribute ay din naging node. Hindi katulad ng element node, ang attribute node ay may teksto na halaga.
Ang paraan ng paghanap ng halaga ng attribute ay ang paghanap ng kanilang teksto na halaga.
Maaari itong ginawa sa pamamagitan ng paggamit ng getAttribute() method o ng attribute node na may nodeValue attribute.
Hanapin ang halaga ng attribute - getAttribute()
Ang getAttribute() method ay nangangahulugan ng halaga ng attribute.
Ang kodigo ay naghahanap ng teksto ng halaga ng attribute ng "lang" ng unang <title> element:
xmlDoc=loadXMLDoc("books.xml"); txt=xmlDoc.getElementsByTagName("title")[0].getAttribute("lang");
结果:txt = "en"
例子解释:
- 通过使用 loadXMLDoc() 把 "books.xml" 载入 xmlDoc 中
- 把 txt 变量设置为第一个 title 元素节点的 "lang" 属性的值
遍历所有 <book> 元素,并获取它们的 "category" 属性:TIY
获取属性值 - getAttributeNode()
getAttributeNode() 方法返回属性节点。
下面代码检索第一个 <title> 元素的 "lang" 属性的文本值:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title")[0].getAttributeNode("lang"); txt=x.nodeValue;
结果:txt = "en"
例子解释:
- 通过使用 loadXMLDoc() 把 "books.xml" 载入 xmlDoc 中
- 获取第一个 <title> 元素节点的 "lang" 属性节点
- 把 txt 变量设置为属性的值
循环所有 <book> 元素并获取它们的 "category" 属性:TIY