Замена узла XML элемента, замена данных в текстовом узле и альтернативный способ замены текста – использование свойства nodeValue
Приветствую, уважаемые читатели блога okITgo.ru! Сегодня мы поговорим о свойствах и методах DOM замены значений узлов XML.
Например, метод replaceChild() заменяет указанный узел XML.
А свойство nodeValue заменяет текст в текстовом узле.
Попробуйте Сами – Примеры
Примеры ниже используют XML файл books.xml.
Функция loadXMLDoc(), описанная во внешнем файле JavaScript, используется для загрузки XML файла.
Замена узла элемента
Этот пример использует replaceChild() для замены первого узла <book>.
Замена данных в текстовом узле
Данный пример использует свойство nodeValue для замены данных в текстовом узле.
Замена Узла Элемента
Метод replaceChild() используется для замены узла.
Следующий фрагмент кода заменяет первый элемент <book>:
Пример
Попробуйте сами » |
Объяснение примера:
- Загружаем "books.xml" в xmlDoc, используя loadXMLDoc()
- Создаем новый узел элемента <book>
- Создаем новый узел элемента <title>
- Создаем новый текстовый узел с текстом "Блокнот"
- Добавляем новый текстовый узел к новому узлу элемента <title>
- Добавляем новый узел элемента <title> к новому узлу элемента <book>
- Заменяем первый узел элемента <book> на новый узел элемента <book>
Замена Данных в Текстовом Узле
Метод replaceData() используется для замены данных в текстовом узле.
Метод replaceData() имеет три параметра:
- смещение (offset) – Где начать замену символов. Значение смещения начинается с нуля
- длина (length) – Сколько символов заменить
- строка (string) – Строка для вставки
Пример
Попробуйте сами » |
Объяснение примера:
- Загружаем "books.xml" в xmlDoc с помощью loadXMLDoc()
- Получаем текстовый узел первого узла элемента <title>
- Используем метод replaceData для замены 49 символов из текстового узла, начиная с 8-го, на строку "как Лечебное Средство"
Альтернативный Способ Замены Текста – Использование Свойства nodeValue
Проще заменить данные в текстовом узле, используя свойство nodeValue.
Следующий фрагмент кода заменит значение текстового узла в первом элементе <title> на "Самогон как Лечебное Средство":
Пример
Попробуйте сами » |
Объяснение примера:
- Загружаем "books.xml" в xmlDoc посредством loadXMLDoc()
- Получаем текстовый узел первого узла элемента <title>
- Используем свойство nodeValue для изменения текста в текстовом узле
Вы найдете дополнительную информацию по модификации значений узлов в статье об изменении узлов. Спасибо за внимание! До новых встреч на страницах сайта okITgo.ru.