2010-07-05 2 views
1

Я работаю со списком XML в тот момент, который выглядит следующим образом:Как получить доступ XMLList узлы в AS3

<feature type="startLocation" value="1" x="15" y="3"/>
<feature type="startLocation" value="1" x="15" y="4"/>
<feature type="startLocation" value="1" x="15" y="5"/>
<feature type="startLocation" value="1" x="15" y="6"/>
<feature type="startLocation" value="1" x="15" y="7"/>

Это код ActionScirpt, который анализирует этот XMLList (с именем this.dropLocationsXML):

public function dropUnit() 
{ 
    var numX:int; 
    var numY:int; 
    var feature:XMLList; 
    trace(this.dropLocationsXML); 
    for(var i:int = 0; i < this.dropLocationsXML.length(); i++) 
    { 
     feature = this.dropLocationsXML.child(i); 
     numX = -16 + ([email protected])*35; 
     numY = 4 + ([email protected])*35; 
    } 
} 

Теперь, когда я пытаюсь получить доступ к этому XMLList с помощью функции child(), я получаю пустой XMLList. То же самое верно, когда я пытаюсь использовать this.dropLocationsXML [1] и метод valueOf().
Как вы можете видеть, мне нужно только извлечь атрибуты x и y из каждого из тегов функций. Оператор trace() дает результат XML, показанный выше.
Кто-нибудь знает, как получить доступ к корневым узлам списков XML, чтобы я мог использовать атрибуты x и y?

ответ

3
for each (var x : XML in dropLocationsXML.feature) { 
    trace("xml: "[email protected]); 

} 
+0

ах я вижу. Я предположил, что ваш xml выглядит следующим образом: maxmc

+0

Это почти трюк: для каждого (var x: XML в dropLocationsXML) { \t trace ("xml:" + x. @ x); } – Bartvbl

+0

aha :) Спасибо за помощь! – Bartvbl

Смежные вопросы