Для Opera и Firefox:
xmlData = document.implementation.createDocument("", "", null);
xmlData.load("my.xml");
Для IE нужно использовать ActiveXObject. А в Chrome и Safari нету поддержки метода load() объекта document.implementation.createDocument() |
И вопрос, где Вы это собираетесь использовать? Возможно есть альтернативные решения.
|
есть некая программа, которая в качестве результата генерирует xml файл, и для удобства просмотра результатов этот xml надо красиво отобразить в качестве HTML страницы.
|
Если это все работает только в Windows то стоит посмотреть в сторону HTA. http://ru.wikipedia.org/wiki/HTML_Application
|
HTA не подходит, т.к. работать должно на других ОС тоже.
решил делать так: вставлять xml файл в iframe, оттуда брать xml и работать с ним. Но у меня возникла такая проблема. Вот страница:
<html>
<head>
<script type="text/javascript">
window.onload = function getElem(){
var iframe = document.getElementById('ifr');
vat iframeDoc = iframe.contentWindow.document;
var elem = iframeDoc.getElementsByTagName('message');
//message -это элемент из xml
alert (elem[0].innerHTML);
}
</script>
</head>
<body>
<iframe id="ifr" src="myXML.xml"></iframe>
</body>
</html>
на это вылазиет ошибка: elem[0] is undefined подскажите пожалуйста, в чем мой косяк? |
Прикрути к XML-файлу таблицы стилей (css, xslt) и открывай его в браузере на прямую в красивом виде.
|
все изменилось, и теперь мне надо брать данные из одного xml файла и группировать их в зависимости от данных которые лежат в другом xml файле, поэтому просто прикрутить css и xslt не получится.
|
заметил еще такую особенность: если изменить расширение у xml файла на htm, то выше написанный мной скрипт будет нормально работать, не подскажете почему? )
|
Потому что DOM отличается. В XML нет тегов (в понятии DOM), есть узлы. Поэтому, например, нужно обращаться не node.tagName, а node.nodeName.
Про getElementsByTagName теперь понятно? |
а как тогда получить узел из xml ? (желательно пример посмотреть)
|
| Часовой пояс GMT +3, время: 18:11. |