Как выбрать все option в select multiple на angular?

436
16 марта 2017, 22:24
<select class="form-control"  ng-model="item_value" multiple>
  <option value='{{level_1}}' ng-if='valid(level_1)' ng-repeat="level_1 in level_1_list">{{level_1.name_level_1}}</option>
</select>

Нужно сделать так что бы первоначально были выбраны все возможные option; Как это сделать? если я поставлю просто selected, ангуляру будет поровну.

Answer 1

Вот с ng-selected вариант:

angular.module('staticSelect', []) 
 .controller('ExampleController', ['$scope', function($scope) { 
   $scope.item_value = null; 
   $scope.level_1_list = [ 
      {name_level_1: 'test', id:1}, 
      {name_level_1: 'test2',  id:2 }, 
      {name_level_1: 'test3',  id:3 }, 
   ]; 
    
   $scope.valid = function (data) { 
      return true; 
   } 
}]);
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
<div ng-app="staticSelect" ng-controller="ExampleController"> 
 
  <select class="form-control"  ng-model="item_value" multiple> 
    <option value='{{level_1}}' ng-if='valid(level_1)' ng-selected="true" ng-repeat="level_1 in level_1_list">{{level_1.name_level_1}}</option> 
  </select> 
</div>

Вариант с ng-options (по совету Grundy):

angular.module('staticSelect', []) 
 .controller('ExampleController', ['$scope', function($scope) { 
    
   $scope.level_1_list = [ 
      {name_level_1: 'test', id:1}, 
      {name_level_1: 'test2',  id:2 }, 
      {name_level_1: 'test3',  id:3 }, 
   ]; 
    
  function valid () { 
       return $scope.level_1_list.filter(function (item) { 
          return item.id != 1; 
      }) 
  }; 
   
  $scope.selectedLevels = $scope.allArr = valid(); 
   
}]);
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
<div ng-app="staticSelect" ng-controller="ExampleController"> 
 
  <select class="form-control"  
        data-ng-model="selectedLevels"  
       data-ng-options="item.name_level_1 for item in allArr"  
       multiple> 
    
  </select> 
</div>

READ ALSO
Свой текстовый редактор

Свой текстовый редактор

Хочу написать свой текстовый редактор, но не знаю даже с чего начатьЯ так понимаю что мне нужна консоль или поле ввода на подобии textedit(textview),...

301
Задача с Codility. Математика. Помогите решить.? [требует правки]

Задача с Codility. Математика. Помогите решить.? [требует правки]

В ряд стоит класс из N учениковНужно сфотографировать студентов, но по эстетическим соображениям вы хотите, чтобы они были упорядочены в порядке...

320
Заменить один div на другой с условием

Заменить один div на другой с условием

Есть один div вывода цены:

290