如何在 AngularJS 的 ng-options 中设置 value 属性? [英] How do I set the value property in AngularJS' ng-options?

查看:25
本文介绍了如何在 AngularJS 的 ng-options 中设置 value 属性?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这似乎困扰着很多人(包括我).

在 AngularJS 中使用 ng-options 指令填充 <select> 标签的选项时,我不知道如何设置选项.这方面的文档确实不清楚 - 至少对于像我这样的傻瓜来说是这样.

我可以像这样轻松设置选项的文本:

ng-options="select p.text for p in resultOptions"

resultOptions 是例如:

<预><代码>[{价值":1,文本":第一"},{价值":2,文本":第二个"}]

设置选项值应该是(并且可能是)最简单的事情,但到目前为止我只是不明白.

解决方案

参见ngOptions

ngOptions(optional) – {comprehension_expression=} – 在其中之一以下表格:

对于数组数据源:数组中值的标签选择作为数组中值的标签对数组中的值进行分组标签通过 trackexpr 为数组 track 中的值逐组选择标签对于对象数据源:对象中(键,值)的标签选择作为对象中(键,值)的标签按组为对象中的(key, value)标签按组为对象中的(key, value)选择标签

在你的情况下,应该是

array = [{ "value": 1, "text": "1st" }, { "value": 2, "text": "2nd" }];<select ng-options="obj.value as obj.text for obj in array"></select>

更新

随着 AngularJS 的更新,现在可以使用 track by 表达式为 select 元素的 value 属性设置实际值.

 中,我们通常需要区分代码中的实际值和 
                
            
发送“验证码”获取 | 15天全站免登陆