2012-12-11 174 views
0

我正在開發一個簡單的程序在閃存中...我有一個問題與複選框...我已經在這裏搜索,我發現一個話題說我需要什麼,但我不瞭解如何去做。驗證複選框是否被選中

這是問題 Checkbox as3 function

這個問題類似...我需要驗證,如果選擇了我的232個複選框......即使按下按鈕,或者如果它被選中。

任何人都可以幫到我嗎?

var select:Array = new Array(); 
var perguntas:Array = new Array("Ch1","Ch2","Ch3","Ch4","Ch5","Ch6","Ch7","Ch8","Ch9","Ch10",); 
var resposta1:Array = new Array("1","0","1","0","0","0","0","0","1","1"."0"); 
var resposta2:Array = new Array("1","1","0","1","0","1","0","1","0","1","1"); 
var resposta3:Array = new Array("1","0","0","0","0","0","0","0","0","0","0"); 
var resposta4:Array = new Array("0","1","0","0","0","0","1","0","1","1","0"); 
var i:Number; 
var p1:Number; 
var p2:Number; 
var p3:Number; 
var p4:Number; 


    //Create all the Checkbox 
    for(i = 0; i < perguntas.length; i++) { 
     select[i] = new CheckBox(); 
     select[i].y = (i * 20); 
     **select[i].addEventListener(MouseEvent.CLICK, seleciona);** 
     select[i].label = perguntas[i]; 
     select[i].width = 600; 
     addChild(select[i]); 
    } 

    //Verify if the checkbox are selected. 
    function seleciona(e:MouseEvent):void { 
     for(var count:Number = 0; count < select.length; count++){  
     if (select[count].selected == true){ 
      p1 += Number(resposta1[count]); 
      p2 += Number(resposta2[count]); 
      p3 += Number(resposta3[count]); 
      p4 += Number(resposta4[count]); 
      trace(p1); 
     }else{ 
      trace(p1); 
      trace(p2); 
      trace(p3); 
      trace(p4); 
     } 
    } 
} 

所以,我已經發現使用按鈕事件的解決方案......對我來說很難爲每個複選框,設置事件......所以讓我們簡化

calcula.addEventListener(MouseEvent.CLICK, selecionaTeste); 
function selecionaTeste(e:MouseEvent):void { 
    for(var count:Number = 0; count < select.length; count++){  
     if (select[count].selected == true){ 
      p1 += Number(resposta1[count]); 
     } 
    } 
} 

回答

0

如果你只需要檢查所有人都被選中或不能,你可以做以下事情:

var allSelected:Boolean = true; 

for(var i=0; i<select.length;i++) 
{ 
if (select[i].selected == false) 
{ 
    allSelected = false; 
} 
} 

if(allSelected == true) 
{ 
    trace("All Checkboxes are Selected!"); 
} 
else 
{ 
    trace("Some or All Checkboxes are left unchecked"); 
} 
+0

嗨yawar ...我更新了代碼。我需要檢查複選框是否被選中...然後p1 + =(Number)array [i],p2 + = ... –

+0

Ty yawar ....我已經找到解決方案。 –

+0

庫爾!乾杯拉斐爾! :) – yawar