XML-анализатор
Все современные браузеры имеют встроенный XML-анализатор.
XML-парсер XML-документ в XML-объект DOM - объект можно управлять с помощью JavaScript.
Разбор XML-документов
Следующий фрагмент кода для разбора XML-документов в XML-объект DOM:
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","books.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","books.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
Разбор строки XML
Следующий фрагмент кода в XML-строка синтаксического анализа объекта XML DOM:
txt="<bookstore><book>";
txt=txt+"<title>Everyday Italian</title>";
txt=txt+"<author>Giada De Laurentiis</author>";
txt=txt+"<year>2005</year>";
txt=txt+"</book></bookstore>";
if (window.DOMParser)
{
parser=new DOMParser();
xmlDoc=parser.parseFromString(txt,"text/xml");
}
else // Internet Explorer
{
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async=false;
xmlDoc.loadXML(txt);
}
txt=txt+"<title>Everyday Italian</title>";
txt=txt+"<author>Giada De Laurentiis</author>";
txt=txt+"<year>2005</year>";
txt=txt+"</book></bookstore>";
if (window.DOMParser)
{
parser=new DOMParser();
xmlDoc=parser.parseFromString(txt,"text/xml");
}
else // Internet Explorer
{
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async=false;
xmlDoc.loadXML(txt);
}
Примечание: Internet Explorer используется метод loadXML () для синтаксического анализа XML - строку, в то время как другие браузеры используют объект DOMParser.
Доступ к Междоменное
По соображениям безопасности, современные браузеры не позволяют междоменный доступ.
Это означает, что он пытается загрузить веб-страницы и XML-файлы, должны быть расположены на том же сервере.
XML DOM
В следующей главе вы узнаете, как получить доступ к объекту XML DOM и извлечения данных.