我是flex的新手,并试图将2个列表选择的数据组合起来,(参见下面的代码):
<s:Label x="538" y="130" text="Industry of Interest:"/>
<s:List id="reIndustry" x="538" y="150" width="165" height="122" dataProvider="{recruitIndustries}" labelField="industry"></s:List>
<s:Label x="723" y="130" text="Qualifications:"/>
<s:List id="reQualifications" x="723" y="150" width="165" height="122" selectedItem="reIndustry.selectedItem.qualification" labelField="qualification"></s:List>
我想要完成的是,当您从“reIndustry”中选择数据时,所选项目的更多数据将显示在“reQualifications”列表中。
这是我的数据:
<s:ArrayList id="recruitIndustries">
<fx:Object industry="Admin/PA/Secretary" qualification="Other"/>
<fx:Object industry="Automotive" qualification="Painter"/>
<fx:Object industry="Building/Construct/Mine"/>
<fx:Object industry="Engineering"/>
<fx:Object industry="Finance/Accounting"/>
<fx:Object industry="FMCG"/>
<fx:Object industry="General Employment"/>
<fx:Object industry="Health and Skincare"/>
<fx:Object industry="Insurance"/>
<fx:Object industry="International"/>
<fx:Object industry="IT/Computer"/>
<fx:Object industry="Legal"/>
<fx:Object industry="Logistics"/>
<fx:Object industry="Management"/>
<fx:Object industry="Manufacturing"/>
<fx:Object industry="Medical"/>
<fx:Object industry="Part Time/ Temps"/>
<fx:Object industry="Professions"/>
<fx:Object industry="Retail"/>
<fx:Object industry="Sales and Marketing"/>
<fx:Object industry="Tourism/Hospitality"/>
</s:ArrayList>
如果可能,我如何在第二个列表“reQualifications”中添加更多值以供显示。
答案 0 :(得分:0)
@RIAstar问题是正确的。
您可以通过以下代码执行此操作: -
<fx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
import spark.events.IndexChangeEvent;
[Bindable]
private var moreDataProvider:ArrayCollection = new ArrayCollection();
private function itemClickHandler(event:IndexChangeEvent):void
{
moreDataProvider.removeAll();
if(Object(reIndustry.selectedItem).hasOwnProperty('qualification'))
moreDataProvider.addItem(reIndustry.selectedItem);
}
]]>
</fx:Script>
<s:layout>
<s:VerticalLayout/>
</s:layout>
<s:Label x="538" y="130" text="Industry of Interest:"/>
<s:List id="reIndustry" dataProvider="{recruitIndustries}" x="538" y="150" width="165" height="122"
labelField="industry" change="itemClickHandler(event)"/>
<s:Label x="723" y="130" text="Qualifications:"/>
<s:List id="reQualifications" dataProvider="{moreDataProvider}" x="723" y="150" width="165" height="122"
labelField="qualification"/>