我在角度中有以下ui-select代码,我希望得到所有选定的值,以便将它们放在一个字符串中。选择效果很好我可以选择产品,但我无法得到我选择的值
<ui-select multiple ng-model="multipleDemo.selectedProducts" theme="bootstrap" ng-disabled="disabled">
<ui-select-match class="ui-select-match" placeholder="Επιλογή προϊόντος...">{{$item.name}}</ui-select-match>
<ui-select-choices class="ui-select-choices" repeat="product in products | propsFilter: {name: $select.search}">
<div ng-bind-html="product.name | highlight: $select.search"></div>
</ui-select-choices>
</ui-select>
在控制器中我有
$scope.multipleDemo = {};
$scope.multipleDemo.selectedProducts = [];
如果我写这样的div
</div>
<div>{{multipleDemo.selectedProducts}}</div>
</div>
然后我看不到这个div中的任何东西。 任何人都可以帮忙吗?
答案 0 :(得分:1)
我已根据您问题中的代码创建this Fiddle,这似乎有效。但我无法发现你的代码有任何明显的错误。
控制器如下:
app.controller("myCtrl", function($scope) {
$scope.products = [
{id:1, name:'Apple'},
{id:2, name:'Banana'},
{id:3, name:'Carrot'}
];
$scope.multipleDemo = {};
$scope.multipleDemo.selectedProducts = [];
});
和HTML:
<div ng-app="app" ng-controller="myCtrl">
<ui-select multiple ng-model="multipleDemo.selectedProducts" theme="bootstrap" ng-disabled="disabled">
<ui-select-match class="ui-select-match" placeholder="Επιλογή προϊόντος...">{{$item.name}}</ui-select-match>
<ui-select-choices class="ui-select-choices" repeat="product in products | propsFilter: {name: $select.search}">
<div ng-bind-html="product.name | highlight: $select.search"></div>
</ui-select-choices>
</ui-select>
<div>
Selected: {{multipleDemo.selectedProducts}}
</div>
</div>
此外,我必须在模块上定义propsFilter
:
app.filter('propsFilter', function() {
...
});
并确保将ngSanitize
作为依赖项包含在内:
var app = angular.module('app', ['ui.select', 'ngSanitize']);