AngularJS: флажок ngModel не проверяется

Кажется, есть проблема с ngModel.

Я пытаюсь получить выбранные идентификаторы флажков, но они не сохраняются, потому что их проверенное свойство не изменяется ngModel.

Это только частичные фрагменты кода. Когда я превратил одно из отмеченных значений в true, идентификатор сохранялся в массив флажков (функция addCustom запускается при нажатии кнопки).

Как я могу это исправить, чтобы я мог получить выбранные флажки?

$scope.checkboxData = [{
  name: "Computer Crash",
  id: 1,
  checked: false
}, {
  name: "Computer Restart",
  id: 2,
  checked: false
}];


$scope.addCustom = function() {
  $scope.custom = !$scope.custom; // close modal

  // get checkbox id
  $scope.checkboxArray = [];

  $scope.checkboxData.forEach(function(checkbox) {
    if (checkbox.checked) {
      console.log(checkbox.id);
      $scope.checkboxArray.push(checkbox.id);
    }
  })
  console.log($scope.checkboxArray);

  //////

  $scope.data.push({
    name: $scope.name,
    symptom: $scope.checkboxArray,
    answer: $scope.answer
  });
  localStorage.setItem('data', JSON.stringify($scope.data));
};
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.20/angular.min.js"></script>
<div ng-app="Netsafe" ng-controller="activityController">
  <div ng-repeat="checkbox in checkboxData" class="form-check form-check-inline col-sm-4">
    <label>
      <input type="checkbox" ng-model="checkbox.checked"/>
      {{checkbox.name}}
    </label>
  </div>
</div>

0 ответов

Другие вопросы по тегам