Javascript ng选项未填充“选择选项”下拉列表

Javascript ng选项未填充“选择选项”下拉列表,javascript,angularjs,Javascript,Angularjs,您好,我已经尝试实现了几个示例中提供的更改,但似乎没有一个是有效的。我有一个ng模型,我清楚地定义了我想要接收的对象的属性。然而,它仍然不起作用。 任何帮助都会很好 HTML 对象正在填充(我已选中),其属性为Name和Id 任何帮助都会很好。谢谢你非常接近。看起来就像是误用了ng模型值。您的代码应该类似于 <select chose ng-model="selectedValue" ng-options="type.Id as type.Name for type in ansExpla

您好,我已经尝试实现了几个示例中提供的更改,但似乎没有一个是有效的。我有一个ng模型,我清楚地定义了我想要接收的对象的属性。然而,它仍然不起作用。 任何帮助都会很好

HTML

对象正在填充(我已选中),其属性为Name和Id


任何帮助都会很好。谢谢

你非常接近。看起来就像是误用了
ng模型
值。您的代码应该类似于

<select chose ng-model="selectedValue" ng-options="type.Id as type.Name for type in ansExplanOpt">
</select>

ng型号
将是用户选择的型号


他们的文档也很好地说明了这一点:

您非常接近。看起来就像是误用了
ng模型
值。您的代码应该类似于

<select chose ng-model="selectedValue" ng-options="type.Id as type.Name for type in ansExplanOpt">
</select>

ng型号
将是用户选择的型号

他们的文档也很好地分解了它:

以下是解决方案:

ng model
是用户选择的值

函数TodoCtrl($scope){ $scope.ansExplanOpt=[ {text:'learn angular',id:1}, {text:'buildanangular应用程序',id:2}]; }

--选择一个选项--
{{select.text}

{{select}}
以下是解决方案:

ng model
是用户选择的值

函数TodoCtrl($scope){ $scope.ansExplanOpt=[ {text:'learn angular',id:1}, {text:'buildanangular应用程序',id:2}]; }

--选择一个选项--
{{select.text}

{{select}}
您可以定义要预选阵列中的哪个元素:

var myApp = angular.module('myApp', [])
 .controller('TestController', ['$scope', function($scope) {
  $scope.data = [{
    label: 'blah',
    value: 'blah'
  }, {
    label: 'blah1',
    value: 'blah1'
  }, {
    label: 'blah2',
    value: 'blah2'
  }];
  $scope.sel = $scope.data[0];

}]);
html:


{{sel}}

有关更多详细信息,请参见。您可以定义要预选阵列中的哪个元素:

var myApp = angular.module('myApp', [])
 .controller('TestController', ['$scope', function($scope) {
  $scope.data = [{
    label: 'blah',
    value: 'blah'
  }, {
    label: 'blah1',
    value: 'blah1'
  }, {
    label: 'blah2',
    value: 'blah2'
  }];
  $scope.sel = $scope.data[0];

}]);
html:


{{sel}}

有关更多详细信息,请参见

ng模型应为选定值,而不是选项数组ng模型应为选定值,而不是选项数组我非常感谢您的努力。我已经看过了angular文档,现在意识到ng model是通过引用而不是通过值来查看项目的。@RyeGuy太棒了!很高兴它有帮助!但是它仍然不起作用!看看我上面的变化。我的错误在哪里?@RyeGuy将您的
ng选项
行更改为
ng options=“type.Id as type.Name for type in ansExplanOpt”>
答案已更新。我非常感谢您的努力。我已经看过了angular文档,现在意识到ng model是通过引用而不是通过值来查看项目的。@RyeGuy太棒了!很高兴它有帮助!但是它仍然不起作用!看看我上面的变化。我的错误在哪里?@RyeGuy将您的
ng选项
行更改为
ng options=“type.Id as type.Name for type in ansExplanOpt”>
答案已更新为该选项。
<div ng-controller="TestController">
  {{sel}}
  <select ng-model="sel.value" ng-options="d.value as d.label for d in data">
  </select>
</div>