FLEX4.7 與Java後臺交互返回json格式的數組 並賦值給前臺datagrid

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
			   xmlns:s="library://ns.adobe.com/flex/spark" 
			   xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
	<s:layout>
		<s:BasicLayout/>
	</s:layout>
	<fx:Script>
		<![CDATA[
			import mx.collections.ArrayCollection;
			import mx.rpc.events.ResultEvent;
			
			protected function jsonService_resultHandler(event:ResultEvent):void
			{
				var rawData:String = event.result as String;
			//單引號替換爲雙引號
				rawData = rawData.replace(/\'/g,"\"");
				
				var result:Array = (JSON.parse(rawData) as Array);
				
				var dp:ArrayCollection = new ArrayCollection(result);
				
				this.dg.dataProvider = dp;
				
			}
			
			protected function btnSubmit_clickHandler():void
			{
				this.jsonService.send();
			}
			
		]]>
	</fx:Script>
	<fx:Declarations>
		<s:HTTPService id="jsonService" url="jsonAction" resultFormat="text" result="jsonService_resultHandler(event)"/>
		
	</fx:Declarations>
	
	
	
	<s:DataGrid id="dg" x="129" y="138" width="500" height="300">
			<s:columns>
				<s:ArrayList>
					<s:GridColumn headerText="username" dataField="username"/>
					<s:GridColumn headerText="password" dataField="password"/>
					
				</s:ArrayList>
				
			</s:columns>
		
	</s:DataGrid>
	
	<s:Button id="btnSubmit" x="150" y="500" label="submit" click="btnSubmit_clickHandler()"/>
	
	
	
</s:Application>

後臺返回的數據爲:

String jsonContent = "[{'username':'simon1','password':'123'},{'username':'simon2','password':'123'},{'username':'simon3','password':'123'}]";

發佈了44 篇原創文章 · 獲贊 1 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章