我的申请中有一名Accordian。手风琴的每个孩子都有一个标签(firstNameLabel)和一个按钮(addPolicyButton)。标签的值通过Repeater和数组设置。
单击addPolicyButton时,如何访问firstNameLabel的'accordian的选定子项'的值?
在下面的代码中,testTextArea.appendText在testTextArea中输出'fname:undefined'。 我在手风琴中可以看到set label的文本设置为'Michael',这就是repMonitor.currentItem.firstName返回的内容。
代码:
private function addPolicy():void{
testTextArea.appendText("fname:"+firstNameLabel.text);
}
<mx:Accordion id="monAccordian" includeIn="Monitoring" x="10" y="10" width="554" height="242" change="monAccordianChange()" >
<mx:Repeater id="repMonitor" dataProvider="{monitoringArray}">
<mx:Canvas width="100%" height="100%" label="{repMonitor.currentItem.firstName}" >
<s:Label id="firstNameLabel" text="{repMonitor.currentItem.firstName}"/>
<mx:Button x="450" y="8" id="addPolicyButton" label="Modify policy" click="addPolicy();" visible="true"/>
</mx:Canvas>
</mx:Repeater>
</mx:Accordion>
<s:TextArea x="138" y="30" enabled="true" id="testTextArea" x.MainPage="80" y.MainPage="100" visible="true"/>
答案 0 :(得分:0)
以下的工作就像一个魅力。 ;)
testTextArea.appendText(其中 “fname:” + monitoringArray.getItemAt(monAccordian.selectedIndex).firstName + “\ n”);