получение значений mx: CheckBox изнутри mx: Repeater - PullRequest
1 голос
/ 28 апреля 2009

У меня есть массив объектов, которые я использую в качестве источника данных для моего ретранслятора.

<mx:Repeater id="categoryRepeater" dataProvider="{this.allCategories}">
<mx:HBox>
<mx:Spacer width="20"/>
<mx:CheckBox id="categoryCheckBox" label="{categoryRepeater.currentItem.question}"/>
</mx:HBox>
</mx:Repeater>

Я бы хотел сказать, какие флажки в списке были отмечены, но я не уверен, как это сделать. Я знаю, что могу добавить функцию при ее нажатии, но не знаю, как определить, какой флажок вызвал функцию.

Ответы [ 2 ]

1 голос
/ 03 февраля 2011

Я понимаю, что это очень старый пост, но я столкнулся с той же проблемой, и currentIndex не был достаточным ответом для меня. Что я нашел, чтобы работать лучше, так это создать функцию по клику:

<mx:Repeater id="rp" dataProvider="{dp}">  
<s:CheckBox height="100%" width="100%" label="{String(rp.currentItem)}"  
click="showAlert(event);"/>
</mx:Repeater>

и функция showAlert выглядит примерно так:

private function showAlert(evt:MouseEvent):void {
  var curBox:CheckBox = evt.currentTarget as CheckBox;
  var str:String = curBox.content.toString();
  if(curBox.selected)
    Alert.show(str + " clicked");
}

Таким образом, вы можете обрабатывать событие как CheckBox внутри вашего кода ActionScript и находить значения, например, было ли оно выбрано и т. Д.

1 голос
/ 28 апреля 2009

Используйте свойство currentIndex.

...