Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/412.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为angularjs对象数组绑定设置选项_Javascript_Angularjs_Ng Options - Fatal编程技术网

Javascript 为angularjs对象数组绑定设置选项

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"

普朗克:

我有一个由对象数组填充的“位置”下拉列表。如果我在控制器中设置对象值,则下拉列表中不会选择该值,为什么不选择?您可以通过html输出看到绑定工作正常,并且值设置正确,但是无法从控制器设置下拉框

控制器:

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]