[英]Flex XML from Obix
使用下面的xml,我试图从“真实” name = sum元素获取val。
我尝试的所有操作都不会使我超过“ obj”级别(而不是根“ obj”级别)
我正在使用flex 4.5
<obj href="http://10.1.151.163/obix/histories/Dashboard_ENC/WaterConsumtion/~historyRollup/" is="obix:HistoryQueryOut" xsi:schemaLocation="http://obix.org/ns/schema/1.0 /obix/xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://obix.org/ns/schema/1.0">
<list name="data" of="obix:HistoryRollupRecord">
<obj>
<abstime name="start" val="2011-06-13T10:00:00.000-04:00" tz="EDT"/>
<abstime name="end" val="2011-06-13T11:00:00.000-04:00" tz="EDT"/>
<int name="count" val="4"/>
<real name="min" val="0.0"/>
<real name="max" val="25.0"/>
<real name="avg" val="14.105714559555054"/>
<real name="sum" val="56.422858238220215"/>
</obj>
<obj>
<abstime name="start" val="2011-06-13T11:00:00.000-04:00" tz="EDT"/>
<abstime name="end" val="2011-06-13T12:00:00.000-04:00" tz="EDT"/>
<int name="count" val="4"/>
<real name="min" val="12.38690185546875"/>
<real name="max" val="42.49167251586914"/>
<real name="avg" val="29.935394763946533"/>
<real name="sum" val="119.74157905578613"/>
</obj>
</list>
<int name="count" val="2"/>
<abstime name="start" val="2011-06-13T10:00:00.000-04:00" tz="EDT"/>
<abstime name="end" val="2011-06-13T12:00:00.000-04:00" tz="EDT"/>
</obj>
这就是我所拥有的...
private function parseWater(ev:Event):void
{
var _xmlWater:XML = new XML(ev.target.data);
trace(_xmlWater);
trace(_xmlWater..obj[1].real[3].@val); // <-- this doesn't work -- undefined
}
谢谢
我认为您需要在其中具有节点“列表”。 看起来您刚刚打错了字,实际上您运行的代码确实引用了“列表”。
这是有关如何在AS3中使用XML数据的非常详细的说明:
http://www.kirupa.com/developer/flashcs3/using_xml_as3_pg1.htm
尝试:
_xmlWater.list[0].obj[1].real[3].@val;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.