PDA

Просмотр полной версии : Обращение к ХМЛ


MisterX
04.09.2007, 23:37
Есть ХМЛ, он приходит мне с сервера ..

<paths>
<item id="4">Monitors</item>
</paths>
<items>
<item id="66">
<type>d</type>
<title>AMD</title>
<typ>catalog</typ>
</item>
<item id="67">
<type>d</type>
<title>Intel</title>
<typ>catalog</typ>
</item>
<item id="68">
<type>d</type>
<title>CPU Coolers</title>
<typ>catalog</typ>
</item>
</items>

потом у мню такая ф-я

private function drawItems(event:Event):void{
var loader:URLLoader = URLLoader(event.target);
var results:XMLList = new XMLList(loader.data);
trace(results.items); //ничего не выводит
}
хотелось бы получить то что находится между тегами <items></items> и отдельно из <paths></paths>, не пойму как =(

etc
05.09.2007, 00:06
Это невалидный XML. И почему используется XMLList вместо XML?

var xml:XML = <items>
<item id="66">
<type>d</type>
<title>AMD</title>
<typ>catalog</typ>
</item>
<item id="67">
<type>d</type>
<title>Intel</title>
<typ>catalog</typ>
</item>
<item id="68">
<type>d</type>
<title>CPU Coolers</title>
<typ>catalog</typ>
</item>
</items>
trace(xml.children());

MisterX
05.09.2007, 00:33
спасибо за абяснение =)

NikR
09.09.2007, 20:02
__etc Чем тебе не понравился его валидный XMLList?
MisterX данные ещё не загрузились - надо событие complete юзать.

etc
09.09.2007, 20:10
NikR, тем, что это невалидный XML.

NikR
09.09.2007, 20:52
Это невалидный XML, зато валидный XMLList.
Я бы вообще сделал:
<path id="4" name="Monitors"/>
<item id="66" type="d" title="AMD" typ="catalog"/>
<item id="67" type="d" title="Intel" typ="catalog"/>
<item id="68" type="d" title="CPU Coolers" typ="catalog"/>

etc
09.09.2007, 20:59
А вот не надо привыкать использовать внешние невалидные XML. XMLList — понятие исключительно E4X внутри флеша и не надо его вываливать наружу, дабы в последствии не иметь проблем с автоматизированным выводом и подготовкой XML.

miramax
10.09.2007, 00:42
NikR, XML документ по стандарту имеет 1 и только 1 корневой узел.
Поэтому XMLList это не есть XML.

NikR
11.09.2007, 17:43
Да знаю я. XMLList - массив XMLей.
Просто __etc отстаивает идею стандарта, а я говорил об удобстве использовании во Flex.
Вообще, проблема темы решается без переписывания в XML.