在具有重复值的对象上使用ng选项-angularjs



JSBIN示例

我正在为我的ng-options:使用一个对象

$scope.data = {
    option1 : 1,
    option2 : 1,
    option3 : 1,
    option4 : 2 
  };

请注意,选项1-3具有相同的值1

将此select元素与ng-options指令一起使用

<select   ng-model=combo_value 
          ng-change='set_value()'
          ng-options="k for (k,v) in data">
</select>

我无法选择选项1和2。

更奇怪的是,使用键盘我可以选择选项1&2,但当用鼠标进行选择时,选择会自动跳到选项3(猜测这是因为它是值为1的最后一个选项(。

我尝试了不同的ng-options表达,但似乎都不起的作用

v as k for (k,v) in data
k for (k,v) in data track by $index
k for (k,v) in data track by k

注意:k总是唯一的

k as v for (k, v) in data

应该允许您选择任何选项。在这种情况下,您的型号combo_value将获得值option1option2等。

使用ng-options="k as k for (k,v) in data"显示并获取option1options2option3ption4作为所选值。

这里的工作示例:

http://plnkr.co/edit/S8RBm8?p=preview

最新更新