George Sharvadze
George Sharvadze

Reputation: 570

Angularjs ui-select: how to set selected value for multiple dropdowns

I have multiple ui-selects on the page. How can I set selected value for each of the item separately, thus using single list retrieved from service?

HTML:

<div class="col-sm-4">
   <ui-select class="col-sm-12 no-padding" ng-model="mappingStrengthList.selected">
   <ui-select-match placeholder="Choose strength">
   <span ng-bind="$select.selected.name"></span>
   </ui-select-match>
   <ui-select-choices repeat="item in (mappingStrengthList | filter: $select.search) track by item.id">
   <span ng-bind="item.name"></span>
   </ui-select-choices>
   </ui-select>
 </div> 
<div class="col-sm-4">
   <ui-select class="col-sm-12 no-padding" ng-model="mappingStrengthList.selected">
   <ui-select-match placeholder="Choose strength">
   <span ng-bind="$select.selected.name"></span>
   </ui-select-match>
   <ui-select-choices repeat="item in (mappingStrengthList | filter: $select.search) track by item.id">
   <span ng-bind="item.name"></span>
   </ui-select-choices>
   </ui-select>
 </div>

Controller:

ListService.getList('mapping-strength').then(function (results) {
                $scope.mappingStrengthList = results;
            }, function (error) {
                console.log(error);
            });

enter image description here

Upvotes: 0

Views: 1544

Answers (2)

lithium
lithium

Reputation: 229

If you want differents selected value, your model should be different, right now you use : ng-model="mappingStrengthList.selected" on both.

I don't think you should even use mappingStrengthList it's the data that will populate the option, the model should be something else.

Upvotes: 1

Paresh Gami
Paresh Gami

Reputation: 4782

$scope.mappingStrengthList.selected = 'YOUR-VALUE-WHICH-YOU-WANT-SET'

Upvotes: 0

Related Questions