2016-11-20 163 views
0

pic 我剛剛接觸了angularjs,我正在創建一個出席應用程序。當我檢查checkall複選框時,所有的名稱複選框也是check,我真正想要實現的是獲取checked複選框的值。我完成了檢查所有複選框。我只想將複選框的所有值存儲在數組中。當我逐個檢查這些複選框時,我只能獲取數據。先謝謝你。當checkall複選框被選中時,獲取所有複選框的值

在我的html這裏是我的代碼。

  <ion-checkbox ng-model="Selected" ng-click="checkAll()"> 
     <div class="wew"> 
     Check All Checkbox 
     </div></ion-checkbox> 
     </label></div> 
     <table><tr><th><center> 
     List of Names 
     </center></th> 
     <th colspan="3"> 
     Actions 
     </th></tr><tr><td><label> 
     <ion-checkbox ng-repeat="role in roles" ng-model="isChecked" ng- 
     change="format(isChecked,role,$index)"><div class="wew"> 
     {{role}} 
     </div></ion-checkbox> 
     </label></td> 

而在我的控制器代碼。首先,這是我的代碼,我得到的名單。

  $http.post(link1, {section: section}).success(function(attendance){ 
     for(a = 0; a<attendance.length; a++){ 
      $scope.roles = [ 
      attendance[0].Full_Name, 
      attendance[1].Full_Name, 
      attendance[2].Full_Name, 
      attendance[3].Full_Name, 
      attendance[4].Full_Name, 
      attendance[5].Full_Name, 
      attendance[6].Full_Name, 
      attendance[7].Full_Name, 
      attendance[8].Full_Name, 
      attendance[9].Full_Name, 
      ] 
      } 
      }) 
      .error(function(err) { 
     console.log(err) 
      }) 

這是我的代碼,我想執行checkall並自動將數據存儲在$ scope.selected = []中;如果我點擊檢查所有複選框..

 $scope.checkAll = function() { 
     if ($scope.Selected) { 
     $scope.Selected = false; 
     } else { 
     $scope.Selected = true; 
     } 
     $scope.isChecked= $scope.Selected; 


     $scope.selected = []; 
     $scope.format = function (isChecked, role, $index) { 
     if (isChecked == true) { 
     $scope.selected.push(role); 
     } 
     else { 
     var _index = $scope.selected.indexOf(role); 
     $scope.selected.splice(_index, 1); 
     } 
     var students = $scope.selected; 
     console.log(students); 
     } 
     } 
+0

NG-模型= 「rolesChecked [role.id]」 NG-真值=「'{{role.id }}'「在離子複選框將幫助你,你可以看到這個例子:http://plnkr.co/edit/jMizCLxPH6DtDA5wL15Q?p=preview – sreeramu

回答

0

試試這個代碼

<script> 
$(function(){ 
var numbers = $("input[type='checkbox']:checked").map(function(_, el) { 
     return $(el).val(); 
     }).get(); 
}); 
</script> 
相關問題