我在我的应用程序中有一个组合框。我也有一个名为“状态”的变量。我希望仅当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时,如何保留相同的值并禁用组合框?