flex 遍历服务器端传过来的标准xml字符串

服务器端返回字符串,是一个xml文件。在flex端得到XML对象。任何得到相关节点的值。希望给个例子。我说的是从服务器端得到一个字符串。这个xml不是在flex端得一个x... 服务器端返回字符串,是一个xml文件。在flex端得到XML对象。任何得到相关节点的值。希望给个例子。我说的是从服务器端得到一个字符串。这个xml不是在flex端得一个xmllist对象的情况。
再加点分。问下,一般从服务端传过来要的数据以什么形式比较好。
或是分几种类型,什么类型都传什么相应类型的数据源。例如:表格要传xml等等。
展开
 我来答
toyblanco
2009-09-23
知道答主
回答量:4
采纳率:0%
帮助的人:0
展开全部
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute">
<mx:HTTPService id="request4QueryNodes"
url="http://localhost/test/test.do"
showBusyCursor="true"
result="initNodes();"/>

<mx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.collections.ArrayCollection;

private function initNodes():void
{
var data4nodeAC:ArrayCollection=request4QueryNodes.lastResult.items.item as ArrayCollection;
if (data4nodeAC == null)
{
data4nodeAC=new ArrayCollection();
data4nodeAC.addItem(request4QueryNodes.lastResult.items.item);
}

var nodeInLayer1AC:ArrayCollection=new ArrayCollection();
var nodeInLayer2AC:ArrayCollection=new ArrayCollection();
var nodeInLayer3AC:ArrayCollection=new ArrayCollection();

for each (var node:Object in data4nodeAC)
{
if (node.LOCLAYER == 1)
nodeInLayer1AC.addItem(node);
else if (node.LOCLAYER == 2 || node.LOCLAYER == 3)
nodeInLayer2AC.addItem(node);
else if (node.LOCLAYER == 4 || node.LOCLAYER == 5)
nodeInLayer3AC.addItem(node);

}

var message:String='there are ' + nodeInLayer1AC.length + 'in Layer1\n';
message+='there are ' + nodeInLayer2AC.length + 'in Layer2\n';
message+='there are ' + nodeInLayer3AC.length + 'in Layer3\n';

Alert.show(message);
}

// 这里不是当作真正的数据源,而是告诉你后台传来的xml应该是什么格式,并且你在前台可以用这个数据源来测试遍历
private var xmlData:XML = <items>
<item>
<ID>1</ID>
<NAME>Node1</NAME>
<LOCLAYER>1</LOCLAYER>
</item>
<item>
<ID>2</ID>
<NAME>Node2</NAME>
<LOCLAYER>2</LOCLAYER>
</item>
<item>
<ID>3</ID>
<NAME>Node3</NAME>
<LOCLAYER>3</LOCLAYER>
</item>
<item>
<ID>4</ID>
<NAME>Node4</NAME>
<LOCLAYER>4</LOCLAYER>
</item>
<item>
<ID>5</ID>
<NAME>Node5</NAME>
<LOCLAYER>5</LOCLAYER>
</item>
</items>;
]]>
</mx:Script>

<mx:Button label="Send"
click="request4QueryNodes.send();"/>

</mx:Application>
北京欢迎你老大
2009-09-23 · TA获得超过1037个赞
知道小有建树答主
回答量:776
采纳率:0%
帮助的人:681万
展开全部
var xml:XML = XML(string); 就可以了!
你想要什么样的?
--------------------------------------------------------------那要看你用什么方式通讯!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xhc2009
2009-09-23 · 超过20用户采纳过TA的回答
知道答主
回答量:131
采纳率:0%
帮助的人:0
展开全部
服务器可以是Arraylist,List,Map都可以啊
到flex就变成了ArrayCollection了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式