NodeValue свойство используется, чтобы получить текстовое значение узла.
getAttribute() метод возвращает значение атрибута.
Получить значение элемента
В DOM, все является узлом. Узлы элементов не имеют текстового значения.
Текстовое значение узла элемента хранится в дочернем узле. Этот узел называется текстовым узлом.
Чтобы получить текстовое значение элемента, вы должны получить значение текстового узла элементов.
Метод getElementsByTagName
getElementsByTagName() метод возвращает список узлов всех элементов с указанным именем тега, в том же порядке , как они появляются в исходном документе.
Предположим , что " books.xml " был загружен в xmlDoc.
Этот код возвращает первый <title> элемент:
var x = xmlDoc.getElementsByTagName("title")[0];
ChildNodes недвижимости
Свойство ChildNodes возвращает список дочерних узлов элемента.
Следующий код извлекает текстовый узел первого <title> элемента:
x = xmlDoc.getElementsByTagName("title")[0];
y = x.childNodes[0];
NodeValue недвижимости
NodeValue свойство возвращает текстовое значение текстового узла.
Следующий код извлекает текстовое значение текстового узла первого <title> элемента:
пример
x = xmlDoc.getElementsByTagName("title")[0];
y = x.childNodes[0];
z = y.nodeValue;
Ресул в г: "Everyday Italian"
Полный пример
пример
<!DOCTYPE html>
<html>
<body>
<p id="demo"></p>
<script>
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (xhttp.readyState == 4 && xhttp.status == 200) {
myFunction(xhttp);
}
};
xhttp.open("GET",
"books.xml", true);
xhttp.send();
function myFunction(xml) {
var xmlDoc = xml.responseXML;
var x = xmlDoc.getElementsByTagName('title')[0];
var y =
x.childNodes[0];
document.getElementById("demo").innerHTML = y.nodeValue;
}
</script>
</body>
</html>
Попробуй сам " Цикл через все <title> элементов: Попробуй сам
Получить значение атрибута
В DOM, атрибуты узлов. В отличие от узлов элементов, атрибутов узлы имеют текстовые значения.
Способ получить значение атрибута, чтобы получить его текстовое значение.
Это может быть сделано с помощью getAttribute() метод или используя nodeValue свойство узла атрибута.
Получить значение атрибута - getAttribute()
getAttribute() метод возвращает attribute's value .
Следующий код извлекает текстовое значение "lang" атрибут первого <title> элемента:
Результат в формате TXT: "en"
Цикл через все <book> элементы и получить их "category" атрибуты: Попробуйте сами
Получить значение атрибута - getAttributeNode()
getAttributeNode() метод возвращает attribute node .
Следующий код извлекает текстовое значение "lang" атрибут первого <title> элемента:
пример
x = xmlDoc.getElementsByTagName("title")[0];
y = x.getAttributeNode("lang");
txt = y.nodeValue;
Попробуй сам " Результат в формате TXT = "en"
Цикл через все <book> элементы и получить их "category" атрибуты: Попробуй сам