Значения узлов изменения XML DOM
Свойство nodeValue используется для изменения значения узла.
Метод setAttribute() используется для изменения значения атрибута.
Попробуйте сами — примеры
В приведенных ниже примерах используется XML-файл books.xml .
этом примере свойство nodeValue используется для изменения текстового узла первого элемента <title> в «books.xml».
В этом примере метод setAttribute() используется для изменения значения атрибута «категория» первой книги <book>.
В этом примере свойство nodeValue используется для изменения значения атрибута «категория» первой <book>.
Изменить значение элемента
В DOM все является узлом. Узлы элементов не имеют текстового значения.
Текстовое значение узла элемента хранится в дочернем узле. Этот узел называется текстовым узлом.
Чтобы изменить текстовое значение элемента, вы должны изменить значение текстового узла элемента.
Изменить значение текстового узла
Свойство nodeValue можно использовать для изменения значения текстового узла .
Предположим, что « books.xml » был загружен в xmlDoc.
Этот код изменяет значение текстового узла первого элемента <title>:
Пример
xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue = "new
content"
Объяснение примера:
- Предположим, что « books.xml » загружается в xmlDoc.
- Получить первый дочерний узел элемента <title>
- Измените значение узла на " новый контент "
Прокрутите и измените текстовый узел всех элементов <title>:
Изменить значение атрибута
В DOM атрибуты — это узлы. В отличие от узлов элементов, узлы атрибутов имеют текстовые значения.
Способ изменить значение атрибута — изменить его текстовое значение.
Это можно сделать с помощью метода setAttribute() или установки свойства nodeValue узла атрибута.
Изменить атрибут с помощью setAttribute()
Метод setAttribute() изменяет значение атрибута .
Если атрибут не существует, создается новый атрибут.
Этот код изменяет атрибут категории элемента <book>:
Пример
xmlDoc.getElementsByTagName("book")[0].setAttribute("category","food");
Объяснение примера:
- Предположим, что « books.xml » загружается в xmlDoc.
- Получить первый элемент <book>
- Измените значение атрибута «категория» на «еда».
Переберите все элементы <title> и добавьте новый атрибут:
Примечание. Если атрибут не существует, создается новый атрибут (с указанным именем и значением).
Изменить атрибут с помощью nodeValue
Свойство nodeValue является значением узла атрибута .
Изменение свойства value изменяет значение атрибута.
Пример
xmlDoc.getElementsByTagName("book")[0].getAttributeNode("category").nodeValue = "food";
Объяснение примера:
- Предположим, что « books.xml » загружается в xmlDoc.
- Получить атрибут «категория» первого элемента <book>
- Измените значение узла атрибута на «еда».