<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" creationComplete="jsonservice.send()">?
<mx:Script> <![CDATA[ import mx.rpc.events.ResultEvent;?
import com.adobe.serialization.json.JSONDecoder; private function onJSONResult( event:ResultEvent ) : void { ? var data:String = event.result.toString();
//可以直接通过以下数据测试
//???? var data:String = "[{"uv":3,"pv":24,"date":"2011-07-20"},{"uv":1,"pv":1,"date":"2011-07-21"},{"uv":13,"pv":44,"date":"2011-07-22"}]"; ? data = data.replace( /s/g,'' ); ? var jd:JSONDecoder =?new JSONDecoder( data );?? dg.dataProvider =jd.getObject(); } ]]>?
</mx:Script> <mx:HTTPService id="jsonservice" url="http://localhost:8080/testdemo/testJs.jsp"?
resultFormat="text" result="onJSONResult(event)" /> <mx:Panel title="Stock Data " width="100% " height="100% "> ? <mx:DataGrid id="dg" width="100%" height="100%"> ?? <mx:columns>?
??? <mx:DataGridColumn dataField="compa" />?
??? <mx:DataGridColumn dataField="compb" /> ??? </mx:columns>?
?? </mx:DataGrid> ? </mx:Panel>?
</mx:Application>
网络中查到的源代码中,给出的.swc文件有误,JSONDecoder(param)只有一个参数,且获得结果的方法为.getObject(),而不是.getValue()?.
参考1