Flex中mx:model和mx:xml的使用

這兩個標籤都可以裝載數據,以供其他標籤用dataProvider使用.從後台得到的數據一般為xml格式的比較多,但在flex中得到這個xml,好 像都不能直接裝載入像list,combox,linkbar等標籤中,必須先載入mx:model或mx:xml中再使用,當然也可以用Array來裝 載,至於其他的情況也可用Object來處理,這個將在下篇中介紹.

mx:model
  <mx:Model id="linkData">
<part>gg</part>
<item>
<label>
dfsg
</label>
<data>
df
</data>
</item>
<item>
<label>
dfsgfd
</label>
<data>
dff
</data>
</item>
</mx:Model>
如 上model定義,在list,combox中調用可以用{linkData.item}來完成,至於如果想取其中的節點值可用 linkData.part或linkData.item[0].label等來處理,取得的值分別為gg和dfsg

mx:xml
例子
  <mx:XML id="treexml">
         <node label="Mail">
             <label>df</label>
            <data>dfgg</data>
         </node>
         <node>
             <label>fgd</label>
            <data>hdfh</data>
         </node>
         <node>
             <label>fh</label>
            <data>fgfdg</data>
         </node>
</mx:XML>
如 上xml定義,在list,combox中調用可以用{linkData.childNodes}來完成(從 linkData.childNodes.toString()中可以看到通過dataProvider.addItem添加的item應該 時<mx:Object label=““ data=““/>這樣的格式,而不像mx:model中那樣,是<item><label></label& gt;<data></data></item>(也可能mx:xml和mx:model是一樣的),所以在 mx:model中可以用linkData.item可以顯示所有紀錄,而在mx:xml中linkData.childNodes只會顯示新添加的數 據.),
另外如果單獨取某值,那麼用 linkData.childNodes[0].firstChild.firstChild.nodeValue,值為df
posted on 2010-06-05 15:05  念时  阅读(478)  评论(0编辑  收藏  举报

细节决定成败!态度决定一切!