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
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