我有以下内容:
for(var i:Number = 1; i <= 10; i++) {
if ( eval("chk"+i).selected == false ) {
btnSubmit.enabled = false;
} else {
btnSubmit.enabled = true;
}
}
我有10个盒子。如果检查了其中任何一个,那么我启用表单提交按钮。出于某种原因,上述代码仅适用于第10项。任何想法为什么?
答案 0 :(得分:2)
您依次循环浏览每个复选框,如果选中该复选框则设置启用提交按钮,如果不是则禁用。
这意味着最后一个复选框是唯一可以计数的复选框,因为每个复选框都会撤消前一个复选框。
请改为尝试:
btnSubmit.enabled = false;
for(var i:Number = 1; i <= 10; i++) {
if ( eval("chk"+i).selected == true ) {
btnSubmit.enabled = true;
}
}
现在您将按钮设置为禁用,然后仅在勾选任何复选框时将其设置为启用。
答案 1 :(得分:0)
在btnSubmit.enabled = true之后添加break语句以立即停止循环。在这种情况下小事......但是......