Flex加载数据

下面是个加载数据的例子,其实就是返回类型是XML,然后把它显示出来:
   <?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
 <mx:Script>
         <![CDATA[
             import mx.rpc.events.FaultEvent;
             import mx.rpc.events.ResultEvent;
             import mx.rpc.http.HTTPService;
            
//             internal function onClick():void
//             {
//                 var service:HTTPService = new HTTPService();
//                 service.url = "http://localhost:8080/TestFlex/book.xml";
//                 service.useProxy = false;
//                 service.resultFormat="e4x";             
//                 service.addEventListener(ResultEvent.RESULT,onResultHandler);
//                 service.send();
//             }
            
             internal function onResultHandler(event:ResultEvent):void
             {
                 var xml:XML = event.result as XML;
                 trace(xml);
                 bookGrid.dataProvider = xml.Book;
             }
         ]]>
     </mx:Script>
     <mx:HTTPService id="hs" useProxy="false" resultFormat="e4x" result="onResultHandler(event);" url="http://localhost:8080/TestFlex/book.xml"/>
     <mx:Panel x="49.5" y="94" width="419" height="267" layout="absolute" fontSize="12" title="使用HTTPService加载XML数据">
         <mx:DataGrid x="10" y="10" width="377" id="bookGrid">          
           <mx:columns>
                 <mx:DataGridColumn headerText="编号" dataField="Id"/>
                 <mx:DataGridColumn headerText="书名" dataField="Name"/>
                 <mx:DataGridColumn headerText="作者" dataField="Author"/>
                 <mx:DataGridColumn headerText="价格" dataField="Price"/>
             </mx:columns>
         </mx:DataGrid>
         <mx:ControlBar height="42">
             <mx:Button label="加载数据" fontWeight="normal" click="hs.send()"/>   
                  </mx:ControlBar>
    </mx:Panel>

</mx:Application>
这个例子中的onclick函数没用到,这里只是展示怎么硬编码HTTPService,注意返回方法里的写法,还有resultFormat="e4x",加载
数据还有一种方法就是利用URLRequest和URLLoader:
     <mx:Script>
          <![CDATA[
              internal function onClick():void
              {
                  var request:URLRequest = new URLRequest("http://localhost:1146/Data/Book.xml");
                 var loader:URLLoader = new URLLoader();
                  loader.load(request);
                 loader.addEventListener(Event.COMPLETE,onCompleteHandler);
             }
            
             private function onCompleteHandler(evt:Event):void
             {
                 var xml:XML = new XML(evt.target.data);
                 bookGrid.dataProvider = xml.Book;
             }
         ]]>
     </mx:Script>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值