2016-11-20 4 views
0

pic Je suis nouveau à angularjs, je crée une application de participation. Lorsque je coche la case à cocher checkall, toute la case à cocher du nom est également cochée et ce que je voulais vraiment faire, c'est obtenir la valeur des cases cochées. J'ai fini de cocher toutes les cases. Je veux juste stocker toute la valeur des cases à cocher dans un tableau. Je peux seulement obtenir des données quand je coche ces cases un par un. Merci d'avance.Obtenir la valeur de toutes les cases à cocher lorsque la case à cocher est cochée

Dans mon code HTML, voici mon code.

  <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> 

Et dans mon code de contrôleurs. C'est d'abord mon code où j'obtiens la liste des noms.

  $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) 
      }) 

Et voici mon code où je voulais exécuter le checkall et stocker automatiquement les données en $ scope.selected = []; si je clique sur le contrôle toutes case ..

 $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 modèle = "rolesChecked [role.id]" ng-vrai-value = "{{role.id }} '"dans ion-checkbox vous aidera, vous pouvez voir cet exemple: http://plnkr.co/edit/jMizCLxPH6DtDA5wL15Q?p=preview – sreeramu

Répondre

0

essayer ce code

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