我在C#controller中发送生成一个列表并将其转换为Json,并在前端角度接收。当我尝试使用ng-options来循环这个数组并获得数组值时,我总是得到索引。
<select class="selectpicker" data-show-subtext="true" data-live-search="true" ng-model="groupArray" ng-options="k for (k,v) in groupArray">
答案 0 :(得分:0)
您是否在ng-options
?
v for (k,v) in groupArray
(我目前无法尝试,但我不确定,但值得一试)
答案 1 :(得分:0)
根据您的对象结构,您只需使用。
v for (k,v) in groupArray
k是键,它将返回索引,如果你想访问任何给定对象的属性值,你可以尝试类似的东西。
v.propertyname for (k,v) in object
其中propertyname
是object
结构中的属性。
有关详细信息,请参阅ngOptions
docs ngOptions
答案 2 :(得分:0)
一个简单的工作示例应该是这样的:
控制器内部
$ scope.JSONdata = [{ &#39;名称&#39; :&#39;名称1&#39;, &#39; SNAME&#39; :&#39; Sname 1&#39; }, { &#39; name&#39;:&#39; Name 2&#39;, &#39; sname&#39;:&#39; Sname 2&#39; }, { &#39; name&#39;:&#39; Name 3&#39;, &#39; sname&#39;:&#39; Sname 3&#39; }]
从前端
<select ng-model='selectedName'
ng-options='item as item.name for item in JSONdata'>
</select>
//Retrieves the whole object. From here you can access both name and
//sname of the selected item.
SelectedObject : {{selectedName}}
ng-options的工作原理如下: