简体   繁体   中英

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);
            });

在此处输入图片说明

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.

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

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM