PDA

Просмотр полной версии : trace не работает для XML?


Aleksey123
31.10.2006, 18:55
Пишу код:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" backgroundColor="#eeeeee">
<mx:Script>
<![CDATA[
import mx.controls.Alert;
var myXML:XML =
<order>
<item id='1'>
<menuName>burger</menuName>
<price>3.95</price>
</item>
<item id='2'>
<menuName>fries</menuName>
<price>1.45</price>
</item>
</order>

trace(myXML.item[0].menuName);
trace(myXML.item.(@id==2).menuName);
trace(myXML.item.(menuName=="burger").price);

</mx:Script>


В ответ вижу "Access of undefined property myXML"

Почему не работает? пример взят из документации.

Nirth: на нашем форуме, обязательно выделять код тэгами

etc
31.10.2006, 20:11
потому что trace надо писать внутри метода.

Aleksey123
31.10.2006, 21:03
Спасибо.

Так работает:


<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"
initialize="Func()">

<mx:Script>
<![CDATA[
public function Func():void{
var myXML:XML =
<order>
<item id='1'>
<menuName>burger</menuName>
<price>3.95</price>
</item>
<item id='2'>
<menuName>fries</menuName>
<price>1.45</price>
</item>
</order>

trace(myXML.item[0].menuName);
trace(myXML.item.(@id==2).menuName);
trace(myXML.item.(menuName=="burger").price);
}
]]>
</mx:Script>
</mx:Application>

etc
31.10.2006, 21:24
Ну саму переменную можно было объявить и вне метода.