AngularJS - 将ng-options连接到属性中指定的对象

时间:2014-03-24 01:49:45

标签: angularjs ng-options

我正在处理表单生成器实现,并且我想让ng-options评估当前'字段的属性。并返回选择的选项'如$ scope.options那样列出。

这意味着我可以设置'选项'在我的控制器中包含对象,并让表单元素使用正确的对象来填充下拉列表。

我的表单是从关系数据库构建的,因此对目标对象进行硬编码并不会有所帮助(虽然它确实有效,但它只是不可扩展)

我很难搞清楚如何获取ng-options来评估一个表达式,该表达式从变量跳转到对象名称。

也许只有更好的方法才能完成这项工作?

<select id="{{field.Name}}" ng-model="field.Value"ng-options="option.ID as option.Value for option in [SOMETHING THAT EVALUATES TO AN OBJECT NAMED IN THE BINDING PROPERTY]" ng-required="field.Required"></select>

我有一个小提琴:JSFiddle

1 个答案:

答案 0 :(得分:1)

我会创建一个包含选项对象的对象

$scope.optiongroups = {group1: [...], group2: [...]}

然后

ng-options="value as option for option in optiongroups[dynamic var here]"