如何将 ng-options 与字典样式对象一起使用?
How to use ng-options with a dictionary style object?
我有一个如下所示的数据源:
var options = {
"A": { name: "Bob", SSN: "111-22-3333" },
"B": { name: "Sue", SSN: "444-55-6666" }
};
我想使用 ng-options 让用户 select 一个来自上面选项的人。
我写的 HTML 看起来像这样:
<select ng-model="ctrl.selectedPerson" ng-options="label for (value, label) in ctrl.options"></select>
这导致我能够 select 一个选项,但它显示 [object Object] 作为每个选项的 select 文本。
我认为问题在于我需要指定我想显示选项的名称字段,但我对 ng-options 属性的语法完全困惑。
如何将 ng-options 与此字典式数据源一起使用?
关闭语法 - 它是 value as text for (key, val) in obj
- 所以你的是:
ng-options="label as label.name for (value, label) in ctrl.options"
每个对象的 name
属性 将是上例中的文本 - 而值是整个对象。
我有一个如下所示的数据源:
var options = {
"A": { name: "Bob", SSN: "111-22-3333" },
"B": { name: "Sue", SSN: "444-55-6666" }
};
我想使用 ng-options 让用户 select 一个来自上面选项的人。
我写的 HTML 看起来像这样:
<select ng-model="ctrl.selectedPerson" ng-options="label for (value, label) in ctrl.options"></select>
这导致我能够 select 一个选项,但它显示 [object Object] 作为每个选项的 select 文本。
我认为问题在于我需要指定我想显示选项的名称字段,但我对 ng-options 属性的语法完全困惑。
如何将 ng-options 与此字典式数据源一起使用?
关闭语法 - 它是 value as text for (key, val) in obj
- 所以你的是:
ng-options="label as label.name for (value, label) in ctrl.options"
每个对象的 name
属性 将是上例中的文本 - 而值是整个对象。