Angular Material md选择选项组默认选定值

时间:2016-04-18 06:42:59

标签: angularjs angular-material

如何将列表中的特定项目设置为md-select选项组中的选定值。

例如,当我加载页面时,我想要看到Alice和Steve已经被检查过了。我尝试通过设置值来设置模型,但它不起作用。

$scope.users = [
       { id: 1, name: 'Bob' },
       { id: 2, name: 'Alice' },
       { id: 3, name: 'Steve' } ];

$scope.selectedUser = [{ id: 2, name: 'Alice' },{id: 3,name:'Steve'}];

<md-input-container>
   <label>Users</label>
     <md-select ng-model="selectedUser" multiple="">
        <md-optgroup label="Users">
        <md-option ng-value="user" ng-repeat="user in users">{$ user.name $}</md-option>
        </md-optgroup>
      </md-select>
</md-input-container>

enter image description here

干杯!

2 个答案:

答案 0 :(得分:4)

使用ng-model-options(参见页面中的最后一个示例)。所以你的md-select你看起来像这样:

<md-select ng-model="selectedUser" multiple="" 
           ng-model-options="{trackBy: '$value.id'}">

Plunker example

答案 1 :(得分:2)

您可以使用ng-selected。 不幸的是,似乎ng-selected不起作用。所以你必须使用三元运算符。

<md-option ng-value="user" ng-repeat="user in users" ng-selected="user.name === 'Bob' ? true : (user.name === 'Alice' ? true : false)">{{ user.name }}</md-option>

PLUNKER