XML-ДОМ
Основой XML является объектная модель документа (DOM). Документ DOM представляет собой набор узлов или информационных блоков, организованных иерархически. Благодаря этой иерархической структуре разработчики могут находить определенную информацию в дереве навигации.
DOM (объектная модель документа) определяет стандартные методы доступа к документам и управления ими.
XML-ДОМ
XML DOM (объектная модель XML-документа) определяет стандартный метод доступа к XML-документам и управления ими.
XML DOM рассматривает XML-документы как древовидную структуру.
Доступ ко всем элементам возможен через дерево DOM. Их содержимое можно изменять или удалять, а также создавать новые элементы. Элементы, их текст и атрибуты считаются узлами.
Вы можете узнать больше о XML DOM в нашем руководстве по XML DOM.
HTML-ДОМ
HTML DOM определяет стандартные методы доступа к документам HTML и управления ими.
Доступ ко всем элементам HTML можно получить через HTML DOM.
Вы можете узнать больше о HTML DOM в нашем руководстве по HTML DOM. .
Загрузка XML-файла — пример кроссбраузерности
В следующем примере документ XML («note.xml») анализируется в объект XML DOM, а затем извлекается некоторая информация с помощью JavaScript:
Пример
<html><body><h1>Внутреннее примечание W3Cschools</h1><div><b>Кому:</b> <span id="to"></span><br /><b>От:< /b> <span id="from"></span><br /><b>Сообщение:</b> <span id="message"></span></div><script>if (окно .XMLHttpRequest){// код для IE7+, Firefox, Chrome, Opera, Safarixmlhttp=new XMLHttpRequest();}else{// код для IE6, IE5xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");}xmlhttp.open("GET","note.xml",false);xmlhttp.send();xmlDoc=xmlhttp.responseXM L;document.getElementById("to").innerHTML=xmlDoc.getElementsByTagName("to")[0].childNodes[0].nodeValue;document.g etElementById("from").innerHTML=xmlDoc.getElementsByTagName("from")[0].childNodes[0].nodeValue;document.getElemen tById("сообщение").innerHTML=xmlDoc.getElementsByTagName("body")[0].childNodes[0].nodeValue;</script></body></html>Попробуйте »Важное примечание!
Чтобы извлечь текст «Tove» из элемента <to> в приведенном выше XML-файле («note.xml»), используйте следующий синтаксис:
getElementsByTagName("to")[0].childNodes[0].nodeValueОбратите внимание: даже если XML-файл содержит только один элемент <to>, вы все равно должны указать индекс массива [0]. Это связано с тем, что метод getElementsByTagName() возвращает массив.
Загрузка строки XML — пример кроссбраузерности
В следующем примере строка XML анализируется в объект XML DOM, а затем извлекается некоторая информация с помощью JavaScript:
Пример
<html><body><h1>Внутреннее примечание W3Cschools</h1><div><b>Кому:</b> <span id="to"></span><br /><b>От:< /b> <span id="from"></span><br /><b>Сообщение:</b> <span id="message"></span></div><script>txt="<note>";txt=txt+"<to>Тове</to>";txt=txt+"<from>Яни</from >";txt=txt+"<heading>Напоминание</heading>";txt=txt+"<body>Не забудь мне это выходные!</body>";txt=txt+"</note>";if (window.DOMParser){parser=new DOMParser();xmlDoc=parser.parseFromString(txt,"text/xml");}else / /Internet Explorer{xmlDoc=новый ActiveXObject("Microsoft.XMLDOM");xmlDoc.async=false;xmlDoc.loadXML(txt);}document.getElementById("to").innerHTML=xmlDoc.getElementsByTagName("to")[0].childNodes[0] .nodeValue;document.getElementById("from" ).innerHTML=xmlDoc.getElementsByTagName("from")[0].childNodes[0].nodeValue;document.getElementById("сообщение").innerHTML=xmlDoc.getElementsByTagName("body")[0].childNodes[0] .nodeValue;</script></body></html>Попробуйте »
В следующем разделе вы узнаете, как отображать данные XML на странице HTML.