Javascript 为angularjs对象数组绑定设置选项
普朗克: 我有一个由对象数组填充的“位置”下拉列表。如果我在控制器中设置对象值,则下拉列表中不会选择该值,为什么不选择?您可以通过html输出看到绑定工作正常,并且值设置正确,但是无法从控制器设置下拉框 控制器:Javascript 为angularjs对象数组绑定设置选项,javascript,angularjs,ng-options,Javascript,Angularjs,Ng Options,普朗克: 我有一个由对象数组填充的“位置”下拉列表。如果我在控制器中设置对象值,则下拉列表中不会选择该值,为什么不选择?您可以通过html输出看到绑定工作正常,并且值设置正确,但是无法从控制器设置下拉框 控制器: var myapp = angular.module('myapp', []); myapp.controller('ctrl', function($scope) { $scope.locationOptions = [ {id: 1, name: "option 1"
var myapp = angular.module('myapp', []);
myapp.controller('ctrl', function($scope) {
$scope.locationOptions = [
{id: 1, name: "option 1"},
{id: 2, name: "option 2"}];
$scope.options = {
location: { id:1, name: "option 1"}
}
});
模板:
<div class="form-group">
<label for="location" class="control-label col-md-2">Location</label>
<div class="col-md-3">
<select id="location"
class="form-control"
ng-options="loc.name for loc in locationOptions"
ng-disabled="loadingLocations"
ng-model="options.location">
</select>
</div>
</div>
LocationID: {{options.location.id}}
Location: {{options.location.name}}
位置
LocationID:{{options.location.id}
位置:{{options.Location.name}
这是因为angularjs使用引用进行链接,请尝试这样做:
$scope.options = $scope.locationOptions[0]