我在视图中有以下角度js代码
<div class="icon-dropdown people-icon fixed-height-select" ng-dropdown-multiselect="" options="vm.collectionGroups" selected-model="vm.selectedCollections" ng-click="vm.events.getStatistics()"></div>
我希望以编程方式设置&#34;全选&#34;选项作为最初选择的选项。
答案 0 :(得分:0)
指令上没有可以实现Select All
行为的选项或功能。
您可以做的是在控制器中初始化vm.selectedCollections
。
this.selectedCollections = this.collectionGroups.map(function(item) {
return { id : item.id };
});
创建类似[{id:1}, {id:2}, .. ];
有关详细信息,您可以在预选值部分看到documentation。
答案 1 :(得分:0)
ng-dropdown-multiselect有预选值,它正在使用id。
所以你的预选值vm.selectedColletions必须是id里面的。
所以它应该是
// list selected id
this.selectedCollections = [
{
"id": 1
},
{
"id": 3
}
];
答案 2 :(得分:0)
您可以将其初始化为
this.example1model = [
{id: 1, label: "xx"},
{id: 2, label: "yy"},
{id: 3, label: "zz"}
];
其中example1model是selected-model,默认选择全部
答案 3 :(得分:0)
你的Javascript应该是这样的:
function(){
$scope.vm.selectedCollections = angular.copy($scope.vm.collectionGroups);
};
selected-model = options。 :)轻松。
答案 4 :(得分:0)
在尝试了很多次之后,我找到了简单的解决方案,如下所示
self.example1model = data;
self.selectedCollections = data.slice(0);
答案 5 :(得分:0)
您的选项可能如下所示,
$scope.vm.collectionGroups=[
{"id": 0, "label": "Colum-0", "group": "group-1"},
{"id": 1, "label": "Colum-1", "group": "group-1"},
{"id": 2, "label": "Colum-2", "group": "group-2"},
{"id": 3, "label": "Colum-3", "group": "group-2"}
];
您可以像这样使用散布运算符初始化模型,
$scope.vm.selectedCollections= [...$scope.vm.collectionGroups];