Как загрузить xml из вышележащей директории без обращения к серверу?
Нужно загрузить данные из внешнего xml, расположенного в той же папке (или выше), откуда запущено JS приложение. Насколько я понял, XMLHttpRequest позволяет загружать файлы только через обращение к серверу. Можно ли как-нибудь загрузить данные из файла без помощи сервера?
|
Немного непонятно... xml находится на клиентской машине или на web-сервере?
|
Вроде на клиентской машин. По моему никак нельзя.
|
Можно.
В случае если это обычная страница. Файл нужно открыть во фрейме и после получить необходимые данные с этого фрейма. Но если это именно приложение, виджет, гаджет или hta-апликация, то там есть встроенные методы для работы с локальными файлами. |
Цитата:
|
Цитата:
function loadXML(import_file) { if(typeof ActiveXObject != 'undefined') { var version = ['Microsoft.XML', 'MSXML2.DOMDocument', 'MSXML2.DOMDocument.3.0', 'MSXML2.DOMDocument.4.0', 'MSXML2.DOMDocument.5.0', 'MSXML2.DOMDocument.6.0' ], i = version.length, XMLObject; while(i--) { XMLObject = new ActiveXObject(version[i]); } XMLObject.onreadystatechange = function () { if(XMLObject.readyState == 4) { /* ... */ } XMLObject.load(import_file); } } else if(document.implementation && document.implementation.createDocument) { var XMLObject = document.implementation.createDocument('','',null); XMLObject.load(import_file); XMLObject.onload = function() { /* ... */ }; } else { alert('Your browser doesn\'t support this object'); return false; } } |
monolithed, то, что вы написали не требует обращения к серверу?
И потом я слышал, что ActiveXObject работает только в IE. А для остальных используется XMLHttpRequest. |
Цитата:
в вашем случае, нужно заместо import_file указать путь к файлу и вызвать функцию (ну и допилить код в плане реализации и парсинга документа) Цитата:
|
Цитата:
|
Цитата:
Цитата:
Что вы делаете может расскажите? |
Цитата:
|
В случае когда файлы расположены на сервере, все очевидно - получайте нужный xml-файл при помощи XMLHTTPRequest
Для локального хранения данных используйте предназначенные для этого средства. |
Часовой пояс GMT +3, время: 15:39. |