Reputation: 570
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);
});
Upvotes: 0
Views: 1544
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
Reputation: 4782
$scope.mappingStrengthList.selected = 'YOUR-VALUE-WHICH-YOU-WANT-SET'
Upvotes: 0