2016-11-23 2 views
0

AngularJS를 사용하여 확인란 목록을 바인딩하고 ng-reapet 메서드를 사용하여 확인란에서 선택한 값을 모두 얻는 방법은 무엇입니까?Angular를 사용하여 확인란 목록을 바인딩하고 ng-reapet 메서드를 사용하여 확인란에서 선택한 값을 모두 얻는 방법

각도 조절기에서 선택한 확인란의 값을 가져 오려고합니다.

보기

<ul class="to_do"> 
    <li ng-repeat="form in ManagementScreenModel.Forms"> 
     <!--<input type="checkbox" ng-model="RoleData.formUrl" value="{{form.Value}}" id="{{form.Value}}">--> 

     <input type="checkbox" 
       ng-model="RoleData.selectedForms" 
       data-checklist-model="RoleData.ManagementScreenModel.Forms" 
       data-checklist-value="{{form.Value}}" 
       id="{{form.Value}}"> 

     {{form.Text}} 
    </li> 
</ul> 

컨트롤러

$scope.SetUserpermision = function() { 
    Get(
     "/Home/GetAvailableForms", 
     null, 
     function(result) {}, 
     function(result) { 
      userforms = result; 
      //$scope.GetUserForms = json.parse(result); 
     }, 
     null 
    ); 

    Post(
     "/ManagementScreen/SetAccess", 
     $scope.RoleData.userforms, 
     function OnError(jqXHR, testStatus, errorThrown) { 
      // display error here 
     }, 
     function (result) { 
      var response = JSON.parse(result); 
      if (response != null && response.StatusCode === 200) { 
       //alert("User email change successfully"); 
      } 
     }, 
     null 
    ); 
} 
+1

plunkr이나 fiddle을 제공해 주시겠습니까? – trichetriche

답변

0

ManagementScreenModel.Forms에서 부울 변수가 (같은 '확인')와 항목이 확인되지 않았거나 양식 체크 변수를 제출 한 후.

HTML

<md-checkbox ng-model="user.checked" aria-label="Checkbox 1"></md-checkbox> 

JS

angular.forEach($scope.users, function(user, i) { 
    if(user.checked === true){ 
//store in an array 
} 
}); 

데모 https://plnkr.co/edit/MTyDSrXCZXlJXVHcyrCV?p=preview

0

var app = angular.module("myapp", []); 
 
app.controller("myCtrl", ['$scope', function($scope) { 
 
    $scope.roles = [ 
 
    'Nitin', 
 
    'Parag', 
 
    'Pravin', 
 
    'Sandeep', 
 
    'Praful' 
 
    ]; 
 
$scope.items=[]; 
 
    $scope.addOrRemove = function (selectedItems,b) {   
 
     
 
    if(b==true) 
 
     $scope.items.push(selectedItems); 
 
    else 
 
     { 
 
     var index = $scope.items.indexOf(selectedItems); 
 
      $scope.items.splice(index,1); 
 
     } 
 
     
 
     }; 
 
    
 
}]);
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<div ng-app="myapp"> 
 
    <div ng-controller="myCtrl"> 
 
    <label ng-repeat="role in roles"> 
 
    <input type="checkbox" ng-model="user.roles" ng-value="role" ng-click="addOrRemove(role,!user.roles)" ng-init="user.roles=false;" > {{role}} 
 
</label> 
 
    
 
    <br/> <br/> <br/> 
 
    
 
    {{items}} 
 
    </div> 
 
    
 
</div>