Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Jquery парсинг XML (https://javascript.ru/forum/jquery/53995-jquery-parsing-xml.html)

ssaich 04.03.2015 14:49

.innerHTML.replace

может ?

laimas 04.03.2015 18:15

Нет, дело в том, что вы работаете с xml-объектом, а в нем нет такого свойства. IE8 "старичок", и в xml-объекте не найдет такого, ибо свойства innerHTML в нем нет.

Если нужно получить html-содержимое элемента item, а это будет элемента А, тогда обращайтесь к нему и получайте его свойство xml:

alert(xmlDoc.find('a').eq(1).get(0).xml)


получит код второго элемент А документа xmlDoc.

Например здесь можно узнать о свойствах xml.

ssaich 04.03.2015 23:39

Цитата:

Сообщение от laimas (Сообщение 359611)
Нет, дело в том, что вы работаете с xml-объектом, а в нем нет такого свойства. IE8 "старичок", и в xml-объекте не найдет такого, ибо свойства innerHTML в нем нет.

Если нужно получить html-содержимое элемента item, а это будет элемента А, тогда обращайтесь к нему и получайте его свойство xml:

alert(xmlDoc.find('a').eq(1).get(0).xml)


получит код второго элемент А документа xmlDoc.

Например здесь можно узнать о свойствах xml.


$(document).ready(function () {

$.ajax({
type: "GET",
url: "myxml.xml",
dataType: "xml",
success: xm
});
});

function xm(xml) {

alert($(xml).find('item').eq(1).get(0).xml);

}

получаю -- undefined

а в IE даже вызов Алерта не происходит, мне просто бы с Jquery нужно ) а за ссылочку спасибо, если с помощью Jquery
для IE не реально ... то

laimas 05.03.2015 03:43

Ну почему не реально, jQuery в данном случае как чернорабичий, дабы достучаться до элемента, а заем get(0) - возвратили DOM, и работаем с ним. Выполните это:

$(function() {
var xmldoc = '<?xml version="1.0"?><list_of_items><item><a>1</a></item><item><a>2</a></item><item><a>3</a></item></list_of_items>',
    xmldoc = $($.parseXML(xmldoc));    
    alert(xmldoc.find('a').eq(1).get(0).xml)
});


Здесь из строки валидного xml jQuery получает его, и работает с ним. Если у вас не получается, значит есть ошибки.


Часовой пояс GMT +3, время: 12:06.