Последние учебники веб-разработки
×

XML Руководство

XML ГЛАВНАЯ XML Введение XML Как использовать XML дерево XML Синтаксис XML элементы XML Атрибуты XML Пространства имен XML дисплей XML XSLT XML XPath XML XLink XML Оценщик XML DTD XML схема XML сервер XML Приложения XML Примеры XML викторина XML сертификат

XML DOM

DOM вступление DOM Вершины DOM XMLHttpRequest DOM Доступ к DOM Узел информация DOM Список узлов DOM Пересекая DOM навигационный DOM Получить значения DOM Change Вершины DOM Remove Вершины DOM Replace Вершины DOM Create Вершины DOM Add Вершины DOM Clone Вершины DOM Примеры

DOM Справка

DOM Типы узлов DOM Узел DOM NodeList DOM NamedNodeMap DOM Документ DOM Элемент DOM Атрибут DOM Текст DOM CDATA DOM Комментарий DOM XMLHttpRequest DOM синтаксический анализатор

XML DTD

DTD вступление DTD Строительные блоки DTD элементы DTD Атрибуты DTD Элементы против Attr DTD юридические лица DTD Примеры

XSD Schema

XSD вступление XSD Как XSD <schema> XSD элементы XSD Атрибуты XSD ограничения

XSD Сложный

XSD элементы XSD пустой XSD Элементы только XSD Только текст XSD смешанный XSD индикаторы XSD <any> XSD <anyAttribute> XSD подмена XSD пример

XSD Data

XSD строка XSD Дата XSD числовой XSD Разное XSD Справка

Web Сервисы

XML Сервисы XML WSDL XML SOAP XML RDF XML RSS

 

XML DOM Учебное пособие


DOM определяет стандарт для доступа и работы с документами.

XML DOM представляет документ XML в виде древовидной структуры.

HTML DOM представляет HTML-документ в виде древовидной структуры.

Понимание DOM является обязательным для тех, кто работает с HTML или XML.

XML DOM Пример дерева

узел дерева DOM


Что такое DOM?

DOM определяет стандарт для доступа к документам, как XML и HTML:

"The W3C Document Object Model (DOM) is a platform and language-neutral interface that allows programs and scripts to dynamically access and update the content, structure, and style of a document."

DOM разделяется на 3 части / уровней:

  • Core DOM - стандартная модель для любого структурированного документа
  • XML DOM - стандартная модель для XML - документов
  • HTML DOM - стандартная модель для HTML - документов

DOM определяет objects and properties всех элементов документа, а также methods (interface) для доступа к ним.


HTML DOM

HTML DOM определяет стандартный способ для доступа и управления HTML-документов.

Все HTML-элементы могут быть доступны через HTML DOM.

HTML DOM определяет objects, properties and methods всех HTML - элементов.


Измените значение HTML-элемента

Этот пример изменяет значение HTML-элемента с ID = "демо":

пример

<h1 id="demo">This is a Heading</h1>

<script>
document.getElementById("demo").innerHTML = "Hello World!";
</script>
Попробуй сам "

Этот пример изменяет значение первого <h1> элемента в HTML - документе:

пример

<h1>This is a Heading</h1>

<h1>This is a Heading</h1>

<script>
document.getElementsByTagName("h1")[0].innerHTML = "Hello World!";
</script>
Попробуй сам "

Примечание: Даже если containes документ HTML только ОДИН <h1> элемента вам все равно придется указать индекс массива [0], потому что getElementsByTagName() метод всегда возвращает массив.

Вы можете узнать гораздо больше о HTML DOM в нашем JavaScript учебнике .


XML DOM

XML DOM определяет стандартный способ для доступа и манипулирования XML-документами.

Все элементы XML могут быть доступны через XML DOM.

XML DOM определяет objects, properties and methods всех элементов XML.

XML DOM является:

  • Стандартная модель объекта для XML
  • Стандартный интерфейс программирования для XML
  • Платформы и языка независимой
  • Стандарт W3C

Другими словами: The XML DOM is a standard for how to get, change, add, or delete XML elements. - The XML DOM is a standard for how to get, change, add, or delete XML elements. того, The XML DOM is a standard for how to get, change, add, or delete XML elements. - The XML DOM is a standard for how to get, change, add, or delete XML elements.


Получить значение элемента XML

Этот код извлекает текстовое значение первого <title> элемента в документе XML:

пример

txt = xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue;

Загрузка XML-файла

Файл XML , используемый в примерах ниже books.xml .

Этот пример читает "books.xml" в xmlDoc и извлекает текстовое значение первого <title> элемент в books.xml:

пример

<!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;
    document.getElementById("demo").innerHTML =
    xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue;
}
</script>

</body>
</html>
Попробуй сам "

Пример Разъяснения

  • xmlDoc - объект XML DOM , созданный анализатором.
  • getElementsByTagName("title")[0] - получить первый <title> элемент
  • childNodes[0] - первый ребенок из <title> элемента (текстового узла)
  • nodeValue - значение узла (the text itself)

Загрузка XML-строки

Этот пример загружает текстовую строку в объект DOM XML, и извлекает информацию из него с JavaScript:

пример

<html>
<body>

<p id="demo"></p>

<script>
var text, parser, xmlDoc;

text = "<bookstore><book>" +
"<title>Everyday Italian</title>" +
"<author>Giada De Laurentiis</author>" +
"<year>2005</year>" +
"</book></bookstore>";

parser = new DOMParser();
xmlDoc = parser.parseFromString(text,"text/xml");

document.getElementById("demo").innerHTML =
xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue ;
</script>

</body>
</html>
Попробуй сам "

Интерфейс программирования

Модели DOM XML как набор объектов узла. Узлы могут быть доступны с JavaScript или других языках программирования. В этом уроке мы используем JavaScript.

Программный интерфейс к DOM определяется набором стандартных свойств и методов.

Properties часто называют как то , что (т.е. имя узла «книга»).

Methods часто называют то , что делается (то есть удалить "книга").


Свойства XML DOM

Вот некоторые типичные свойства DOM:

  • x.nodeName - имя х
  • x.nodeValue - значение х
  • x.parentNode - родительский узел х
  • x.childNodes - дочерние узлы х
  • x.attributes - Атрибуты узлов х

Примечание: В приведенном выше списке, х представляет собой объект узла.


Методы XML DOM

  • x.getElementsByTagName( name ) - получить все элементы с указанным именем тега
  • x.appendChild( node ) - вставить дочерний узел к х
  • x.removeChild( node ) - удалить дочерний узел из х

Примечание: В приведенном выше списке, х представляет собой объект узла.