在Angularjs,我有一個下拉:組選定的選項在下拉在AngularJS的onload
<select ng-model="category" ng-change="categoryChanged(category)" class="form-control"
data-ng-options="category as category.name for category in categories">
<option value="">Select Category</option>
</select>
而且我有一個控制器:
app.controller('searchBoxController', ['$scope', '$location', '$routeParams', 'categoryService', function ($scope, $location, $routeParams, categoryService) {
categoryService.getParentCategory().$promise.then(
function (model) {
$scope.categories = model;
$scope.category.id = $routeParams.categoryId;// Which is coming as "1"
},
function (error) {
});
$scope.categoryChanged = function (category) {
alert(category.id);
};
}]);
$routeParams.categoryId
即將爲 「1」,但它仍然是不在下拉菜單中設置選定的選項。
的可能的複製[我如何設置angularjs選擇框的默認值(http://stackoverflow.com/questions/18380951/how-do-i -set-default-value-of-select-box-in-angularjs) – xkcd149
你必須在控制器的開頭聲明'$ scope.category = {};'。 – Mistalis
@ xkcd149對不起,但我的問題不重複。我只有$ routeParams中的id,而標記爲重複的問題則集中在整個對象上。 –