dedecms织梦内容管理系统    
首页 | java | C/C++ | PHP | 操作系统 | ajax | 脚本编程 | 安全技术 | 本站下载页 | flex | CRM | 专题 | QQ群 | 测试中心 | 会员中心 | 积分规则
  当前位置:主页>flex>文章内容
flex httpservice xml
来源: 作者:
最简单模式:Flex通过httpservice和dataProvider进行数据传输

Xml格式如下:

<?xml version="1.0" encoding="utf-8" ?>

<Result>

<NodeA>value1</NodeA>

<NodeB>valve2</NodeB>

……………………………………………

……………………………………………

</Result>

在Flex中有一个DataGrid,这样就可以用httpservice来使DataGrid获取xml的数据了。

Flex端如下:

<?xml version="1.0" encoding="utf-8"?>    

<mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml"

    title="Blog Details">

    <mx:HTTPService showBusyCursor="true" url="http://localhost:8080/text.xml"/ id=”xmlRecord”>

<mx:DataGrid width="712" height="338" dataProvider="{xmlRecord.lastResult.Result}">

        <mx:columns>

               <mx:DataGridColumn headerText="SectionA" dataField="NodeA " width="400" />

               <mx:DataGridColumn headerText="SectionB" dataField="NodeB" width="30"/>

      。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

        </mx:columns>

</mx:DataGrid>



</mx:TitleWindow>



+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

※     其中红字部分必须一直,由于这个sample比较简单,所以kenshin就不深入研究了。

※     黄字部分一定要按照xml的结构书写。

这样在run 这个Flex的时候,在DataGrid中就会显示NodeA&NodeB的内容即value1&value2

二、稍微复杂一些模式

Xml端代码如下:

<?xml version="1.0" encoding="UTF-8" ?>

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">

<channel>

    <title>value1</title>

    <link>http://www.k-zone.cn/zblog</link>

    <description>关注Flex,Java,DotNet,Web Desgin</description>

。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

</channel>

</rss>

Flex端如下:

<?xml version="1.0" encoding="utf-8"?>

<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"

    layout="absolute"

    creationComplete="feedRequest.send()" >

    <mx:HTTPService

        id="feedRequest"

        url=" http://localhost:8080/text.xml"

        useProxy="false" />

    <mx:Panel x="10" y="10" width="475" height="400" layout="absolute"

        title="{feedRequest.lastResult.rss.channel.title}">

    </mx:Panel>

    。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

</mx:Application>



如果想要得到上面的xml中title的值,只需按照蓝字部分书写即可得到Title的value。

以此类推如果想要得到xml中link的内容,应该按如下书写

feedRequest.lastResult.rss.channel.link



三、复杂一些的模式,即xml的格式比较特殊

Xml端代码如下:

<?xml version="1.0" encoding="utf-8"?>

<Result>

<SectionA SubSectionA1=”value1” SubSectionA2=”value2”/>

<SectinB SubSectionB1=”value3” SubSectionB2=”value4”/>

。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

</esult>

如果大家想要得到SubSectionA1的内容,就显得无从下手了。其实用E4X在actionscript3中已经支持的非常完美了。并且Flex builder2提供的help也有这样的例子。但是我找了一下,没有这样的例子,所以自己研究了一下。并且把结果告诉大家。

要显示SubSectionA1的内容。Flex端如下书写:

var loader:URLLoader = new URLLoader();

var request:URLRequest = new URLRequest("data/sampleData.xml");

loader.load(request);

loader.addEventListener(Event.COMPLETE, onComplete);

        }

public function onComplete(event:Event):void {

    var externalXML:XML;

    var loader:URLLoader = URLLoader(event.target);

    externalXML = new XML(loader.data);

    trace(externalXML. SectionA [0].@ SubSectionA1);

}

其中粗体红字SubSectionA1的内容了。其中externalXML. SectionA [0].@ SubSectionA1中的[0]是xml的record的条数。@后面的就是想要得到的子节点的值。其内容可以是SubSectionA2、 SubSectionB等等的值。部分就是




关于xml的格式在继续引伸一下。以下的格式

<?xml version="1.0" encoding="utf-8"?>

<Result>

<SectionA SubSectionA1=”value1”/>

。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

</Result>



相当于如下的格式:

<?xml version="1.0" encoding="utf-8"?>

<Result>

<SectionA>

<SubSectionA1>value1”</ SubSectionA1>

</SectionA>

。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

</Result>

上一篇:flex 如何使用HTTPService传值   下一篇:FLEX HTTPService 调用 ASP文件
[收藏] [推荐] [评论(0条)] [返回顶部] [打印本页] [关闭窗口]  
用户名: 新注册) 密码: 匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
 §最新评论
  热点文章
·Flex 打印DataGrid内容
·Flex中的闪烁效果
·flex: 使用setInterval 制作定时
·FLEX优秀开源项目介绍
·AS3中的正则表达式
·flex确认提示(confirm window)
·Flex RemoteObject类参考
·flex:RemoteObject 和 DataGrid
·AS3的面向对象特点概述
·利用AS3的图形界面开发及资源管
·AS3.0 访问属性
·AS3.0强大的事件机制
  相关文章
·flex 如何使用HTTPService传值
·FLEX HTTPService 调用 ASP文件
·Flex HTTPService如何给后台传递
·Flex学习进阶-使用
·
flex(通过URLLoader)与后台jsp
·flex存储和验证数据
·对Adobe Flex的十大误解
·flex四舍五入
·flex文件上传显示进度条
·ActionScript 3 中的可变长数组
·AS3 for each in
·URLLoader加载XML
  相关信息
copy right @ 百家拳软件项目研究室 2007 辽ICP备07011763