![](/img/trans.png)
[英]Flex + XML + dataProvider : Problem specifying dataProvider to ComboBox & DataGrid
[英]Flex, <mx:Combobox> & XML: get xml node to specify's dataprovider
我正在嘗試設置組合框的數據提供程序。 我有2個組合框:cb_div和cb_stores。 對於cb_div,我可以使用XML文件正確設置數據提供程序。 將根據cb_div的選定項來設置Cb_stores的數據提供程序。
首先,這是我的XML文件。 cb_div的數據提供程序:
<?xml version="1.0" encoding="UTF-8"?>
<divisions>
<division id="Japan">Japan</division>
<division id="Europe">Europe</division>
</divisions>
cb_stores的數據提供者:
<list>
<stores name="Europe">
<store>BOUTIQUE HARROD'S</store>
<store>GALERIES LAFAYETTE LILLE</store>
<store>GALERIES LAFAYETTE SAISONNIERE</store>
</stores>
<stores name="Japan">
<store>ODEIS PACK HANZOMON</store>
<store>GINZA</store>
<store>OMOTESANDO</store>
</stores>
</list>
我要執行的操作如下:如果用戶在cb_div中選擇“日本”,則cb_stores的數據提供者應為<stores name="Japan">
下的<stores name="Japan">
,如果他選擇“歐洲”,則數據提供者應為<stores name="Europe">
。
這是我做過的,但是沒有用:它返回所有商店。
<mx:Script>
<![CDATA[
import mx.controls.Alert;
private function division_change():void
{
Alert.show(division.selectedItem.toString());
var temp:XMLList = stores.stores.(@name=division.selectedItem);
store.dataProvider = temp.store;
}
]]>
</mx:Script>
<mx:VBox verticalGap="10">
<mx:ComboBox id="division" dataProvider="{divisions.division}" change="division_change()" prompt=" "/>
<mx:ComboBox id="store" prompt=" "/>
<mx:TextInput id="password" displayAsPassword="true"/>
</mx:VBox>
感謝您的任何幫助,您可以提供。
問候
馬上
var temp:XMLList = stores.stores.(@name=division.selectedItem);
需要是
var temp:XMLList = stores.stores.(@name==division.selectedItem);
注意“ ==”
改變它,看看還有什么問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.