Как загрузить содержимое XML-файла с помощью Javascript?
Я ищу способ загрузить содержимое XML-файла непосредственно в переменную Javascript. Скажем, у меня есть следующая структура каталогов:
/index.html
/loader.js
/file.xml
на index.html
, есть <body>
тег, содержимое которого должно быть заменено содержимым XML-файла. Поэтому, если XML-файл содержит:
<element>
<item>Item One</item>
<item>Item Two</item>
</element>
затем после динамической нагрузки HTML будет:
...
<body>
<element>
...
</element>
</body>
...
мой вопрос в том, какую функцию я могу использовать в loader.js
для загрузки содержимого прямо в переменную? Я использовал XmlHttpRequests и синтаксический анализатор ActiveX XMLDOM, но все это просто дает мне структурную модель данных, которую я должен отсортировать, чтобы найти мои элементы. Мне не нужно ничего анализировать, я просто хочу получить все содержимое файла.
Примечание: только HTML / Javascript, без кода на стороне сервера.
2 ответов
Мне кажется, я догадался. Следующий, кажется, работает довольно хорошо:
function loadFileToElement(filename, elementId)
{
var xmlHTTP = new XMLHttpRequest();
try
{
xmlHTTP.open("GET", filename, false);
xmlHTTP.send(null);
}
catch (e) {
window.alert("Unable to load the requested file.");
return;
}
document.getElementById(elementId).innerHTML=xmlHTTP.responseText;
}
возможно, вы можете прочитать свойство responseText XmlHttpRequests, чтобы иметь простой текст перед синтаксическим анализом?