У меня есть поле со списком в моем приложении. У меня также есть переменная под названием «Статус». Я хочу, чтобы поле со списком было включено только тогда, когда значение переменной состояния равно 5 или 6. В противном случае я не смогу изменить значение в поле со списком. Он должен иметь только предыдущее значение.
Я написал событие щелчка, чтобы отключить поле со списком. Но даже если поле со списком отключено, я получаю раскрывающийся список поля со списком, и если я выбираю другое значение в раскрывающемся списке, оно изменяется. Только после этого оно отключается.
Как этого избежать? Я хочу, чтобы сама функция выпадающего списка была отключена. Это код, который я написал. Кто-нибудь, направьте меня.
<mx:FormItem label="Review Status:" width="100%" horizontalAlign="right">
<mx:HBox>
<mx:Label width="30"/>
<mx:ComboBox id="reviewStatus" dataProvider="{Status}"
width="150" click="onStatusChange(event)"/>
</mx:HBox>
Часть сценария действия:
private function onStatusChange(event:Event):void
{
var i:int;
for(i=0;i<defectDetails.length;i++)
{
var defStatusId:String=defectDetails.getItemAt(i).DefectStatusId;
if(defStatusId=="5"){
reviewStatus.enabled=true;
}
else if(defStatusId=="6"){
reviewStatus.enabled=true;
}
else{
reviewStatus.enabled=false;
//reviewStatus.selectedItem.label="Review";
reviewStatus.toolTip="Status can be changed only if Defect Status is Verified or Deferred.";
//Alert.show("Status can be changed only if defect status is verified or deferred");
}
}
}
Если я также использую событие Change, значение изменяется впервые. Только после этого поле со списком отключается. Как сохранить то же значение и отключить поле со списком, когда статус не 5 или 6?