2011-02-24 26 views
0

我通過一個XMLList試圖環和而不是給我的列表作爲XML的每個項目,它只是回來與立場爲字符串如遍歷XMLList - 與奇怪的行爲

var myList:XMLList = ... (contains <Animal><Type>Dog</Type></Animal><Animal><Type>Cat</Type></Animal>)

for(var item in myList) { 
    Alert.show(item);    
} 

它只是提醒 「0」 或 「1」。如果我檢查'item'變量,我會看到同樣的情況。但是,如果我檢查'myList',它看起來像XML。

我也試過myList.children()和強類型化「項目」到「XML」,但沒有我工作過。

會很感激,如果有人能告訴我做了正確的方式。

感謝

回答

1

嘗試for each代替for

1

當它返回索引你可以參考它們在列表中直接:

for(var item in myList) { 
    var xml:XML = myList[item] as XML; 
    trace(xml);   
    } 

這將打印出以下:

<Animal> 
    <Type>Dog</Type> 
</Animal> 
<Animal> 
    <Type>Cat</Type> 
</Animal> 

或者,您可以參照的文這將導致

for (var child : Object in myList.children()) { 
     var xml : XML = myList[child]; 
     trace(xml.Type); 
    } 

:直接在每個孩子的CE元素

Dog 
Cat 
0

嘗試下面的代碼得到的只是狗和貓。

for each (var item:Object in myList) 
      { 
       trace(item.children()[0]); 
      }