【发布时间】:2016-10-10 14:41:11
【问题描述】:
我在 Angular 中使用 ui-select 在我的页面中有一个选择框。我可以通过输入搜索,当我选择值时,会显示名称[这很好],并且ng-model有选择的值id[这也是正确的]
现在我尝试加载已保存记录的视图。我希望预先填充选定的框。
但事实并非如此!
这是我的 HTML
<ui-select ng-model="vm.product.category">
<ui-select-match placeholder="Type to search">{{ (vm.categories | filter : { id : vm.product.category } : true)[0].name }}</ui-select-match>
<ui-select-choices repeat="category.id as category in (vm.categories | filter: {name: $select.search})">
<span ng-bind-html="category.name | highlight: $select.search"></span>
</ui-select-choices>
</ui-select>
这是我的控制器,
app.controller('productDetailsController', [
'$scope', 'Product',
function ($scope, Product) {
var vm = this;
vm.product = {};
vm.categories = [{name: "General", id: "1"}, {name: "Product", id: "2"}]
Product.get({id: id}).$promise.then(function (data) {
vm.product = data.data;
}, function (error) {
alert(error);
});
}
]);
当我从数据库加载记录时,我的模型 () 具有 ID。但我希望将名称显示给用户。
我该怎么做?我在这里做错了什么?
提前致谢!
【问题讨论】: