アプリケーションにコンボ ボックスがあります。「ステータス」という変数もあります。Status 変数の値が 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 でない場合、同じ値を保持してコンボ ボックスを無効にする方法は?