0
我试图设置一个组合框的数据提供者。 我有2个组合框:cb_div和cb_stores。 对于cb_div,我可以使用XML文件正确设置数据提供者。 Cb_stores的数据提供者将根据选定的cb_div项目进行设置。Flex,<mx:Combobox>&XML:获取xml节点以指定数据提供者
首先,这里是我的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的dataProvider应该是<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>
感谢您提供任何帮助。
问候
太棒了! 不够细心> _ < 非常感谢=) – 2010-02-16 15:40:29
始终有助于让全新的眼睛审视您的代码。很高兴有帮助。 – invertedSpear 2010-02-16 15:43:18