Создание узла XML DOM
- Предыдущая страница Замена узла DOM
- Следующая страница Добавление узла DOM
Пример
Ниже приведен пример использования файла XML books.xml.
Функция loadXMLDoc()находится во внешнем JavaScript, используется для загрузки файла XML.
- Создание узла элемента
- Этот пример использует функцию createElement() для создания нового узла элемента и использование appendChild() для добавления его в узел.
- Создание атрибута через использование createAttribute
- Этот пример использует функцию createAttribute() для создания нового узла атрибута и использование setAttributeNode() для вставки этого узла в элемент.
- Создание атрибута через использование setAttribute
- Этот пример использует функцию setAttribute() для создания нового атрибута для элемента.
- Создание узла текста
- Этот пример использует функцию createTextNode() для создания нового узла текста и использование appendChild() для добавления его в элемент.
- Создание узла CDATA section
- Этот пример использует функцию createCDATAsection() для создания узла CDATA section и использование appendChild() для добавления его в элемент.
- Создание комментируемого узла
- Этот пример использует функцию createComment() для создания узла comment и использование appendChild() для добавления его в элемент.
Создание нового узла элемента
Метод createElement() создает новый узел элемента:
xmlDoc=loadXMLDoc("books.xml"); newel=xmlDoc.createElement("edition"); x=xmlDoc.getElementsByTagName("book")[0]; x.appendChild(newel);
Пример объяснение:
- Используя loadXMLDoc() Добавить "books.xmlЗагрузка xmlDoc
- Создайте новый узел элемента <edition>;
- Добавьте этот узел элемента к первому элементу <book>;
Пройдите по всем элементам <book> и добавьте элемент:TIY
Создание нового узла атрибута
createAttribute() используется для создания нового узла атрибута:
xmlDoc=loadXMLDoc("books.xml"); newatt=xmlDoc.createAttribute("edition"); newatt.nodeValue="first"; x=xmlDoc.getElementsByTagName("title"); x[0].setAttributeNode(newatt);
Пример объяснение:
- Используя loadXMLDoc() Добавить "books.xmlЗагрузка xmlDoc
- Создайте новый узел атрибута "edition";
- Добавьте этот новый узел атрибута к первому элементу <title>;
Пройдите по всем элементам <title> и добавьте новый узел атрибута:TIY
Комментарий: Если атрибут уже существует, он заменяется новым атрибутом.
Создание атрибутов с помощью setAttribute()
Поскольку setAttribute() может создавать новые атрибуты, если они не существуют, мы можем использовать этот метод для создания новых атрибутов.
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName('book'); x[0].setAttribute("edition","first");
Пример объяснение:
- Используя loadXMLDoc() Добавить "books.xmlЗагрузка xmlDoc
- Установите (создайте) атрибут для первого элемента <book> с значением "first";
Пройдите по всем элементам <title> и добавьте новый атрибут:TIY
Создание узла текста
Метод createTextNode() создает новый узел текста:
xmlDoc=loadXMLDoc("books.xml"); newel=xmlDoc.createElement("edition"); newtext=xmlDoc.createTextNode("first"); newel.appendChild(newtext); x=xmlDoc.getElementsByTagName("book")[0]; x.appendChild(newel);
Пример объяснение:
- Используя loadXMLDoc() Добавить "books.xmlЗагрузка xmlDoc
- Создайте новый узел элемента <edition>;
- Создайте новый узел текста, текст которого "first";
- Добавьте новый узел текста к этому узлу элемента;
- Добавьте новый узел элемента к первому элементу <book>;
Добавьте узел с узлом текста к всем элементам <book>:TIY
Создание узла CDATA Section
Метод createCDATASection() создает новый узел раздела CDATA.
xmlDoc=loadXMLDoc("books.xml"); newCDATA=xmlDoc.createCDATASection("Special Offer & Book Sale"); x=xmlDoc.getElementsByTagName("book")[0]; x.appendChild(newCDATA);
Пример объяснение:
- Используя loadXMLDoc() Добавить "books.xmlЗагрузка xmlDoc
- Создайте новый узел раздела CDATA
- Добавьте этот новый узел раздела CDATA к первому элементу <book>
Пробегитесь и добавьте раздел CDATA ко всем элементам <book>:TIY
Создание комментируемого узла
Метод createComment() создает новый комментируемый узел.
xmlDoc=loadXMLDoc("books.xml"); newComment=xmlDoc.createComment("Revised March 2008"); x=xmlDoc.getElementsByTagName("book")[0]; x.appendChild(newComment);
Пример объяснение:
- Используя loadXMLDoc() Добавить "books.xmlЗагрузка xmlDoc
- Создайте новый комментируемый узел
- Добавьте этот новый комментируемый узел к первому элементу <book>
Циклически добавьте комментируемый узел к всем элементам <book>:TIY
- Предыдущая страница Замена узла DOM
- Следующая страница Добавление узла DOM