Apache flex 如果选择了10个以上的复选框,则显示警报
我在数据网格中有一列包含复选框。 我想在选中10个以上复选框时发出警报, 表示选中第11个复选框时,它应发出警报 我尝试了下面的代码,但这需要很多时间,我正在寻找一些优化的方法, 在更改复选框的处理程序时Apache flex 如果选择了10个以上的复选框,则显示警报,apache-flex,checkbox,Apache Flex,Checkbox,我在数据网格中有一列包含复选框。 我想在选中10个以上复选框时发出警报, 表示选中第11个复选框时,它应发出警报 我尝试了下面的代码,但这需要很多时间,我正在寻找一些优化的方法, 在更改复选框的处理程序时 protected function checkbox_changeHandler(event:Event):void { data.isUpdated=true; data.incpt=chkflag.selected; var selectionArray=[];
protected function checkbox_changeHandler(event:Event):void
{
data.isUpdated=true;
data.incpt=chkflag.selected;
var selectionArray=[];
for each(var item:Object in outerDocument.adg.dataProvider)
{
if(item.incpt)
selection.push(item);
}
if(selectionArray.length > 10)
{
for each(var item:Object in outerDocument.adg.dataProvider)
{
chkflag.selected=false;
data.incpt=chkflag.selected;
outerDocument.adg.dataProvider.refresh();
}
Alert.show("Max 10 Items can be selected");
}
}
在你的代码中,
selectionArray
从未被使用过,我认为这是一个打字错误,你有selection.push(item)
&selection.length
如果我没有错的话,你的意思是selectionArray
。在我看来,在数组中推送选中项的部分是正常的。我不太理解第二部分,您将所有选中的列设置为false。我们不能从数组中删除最近推送的项,显示警报并从函数返回吗?如果这是一个特定的要求,那么我认为代码看起来不错。我在上面的代码中更正了数组名称,在第二个循环中,我将设置为false以禁用第10项之后的所有复选框。此代码可以工作,但作为每个项的循环运行,如果我有100条记录,则需要花费大量时间来显示警报代码中可能存在的重复项selectionaray
从未使用过,我认为这是一个打字错误,因为您有选择项。推(项)
&选择项。长度如果我没有错的话,您的意思是selectionaray
。在我看来,在数组中推送选中项的部分是正常的。我不太理解第二部分,您将所有选中的列设置为false。我们不能从数组中删除最近推送的项,显示警报并从函数返回吗?如果这是一个特定的要求,那么我认为代码看起来不错。我更正了上面代码中的数组名称,在第二个循环中,我将设置为false以禁用第10项之后的所有复选框。此代码有效,但作为每个项的循环运行,如果我有100条记录,则需要花费大量时间来显示可能的重复项