2017-09-01 60 views
0

我發送在C#控制器中生成一個列表,並將其轉換爲Json和前端的角接收。當我嘗試使用ng-options來循環這個數組並獲取數組值時,我總是得到索引。數組ng-options循環數組找不到值

<select class="selectpicker" data-show-subtext="true" data-live-search="true" ng-model="groupArray" ng-options="k for (k,v) in groupArray"> 

enter image description here

回答

0

有你在ng-options試過嗎?

v for (k,v) in groupArray

(我不能在此刻嘗試,我不知道,但它可能是值得一試)

+0

我試過循環,但我告訴我的數組大小爲6,因爲它重複兩次。我不知道發生了什麼。 –

0

按你可以簡單地使用對象結構。

v for (k,v) in groupArray 

k爲鍵,將返回索引,如果您要訪問的任何對象,你可以嘗試類似的屬性值。

v.propertyname for (k,v) in object 

其中propertyname是你object結構的屬性。

欲瞭解更多信息,請參閱ngOptions文檔ngOptions

0

嗨簡單的工作例子應該是這樣的:

控制器

$ scope.JSONdata = {[ '名' 裏面: 'Name 1', 'sname':'Sname 1' }, { 'name':'Name 2', 'SNAME': 'SNAME 2' }, { '名稱': '名稱3', 'SNAME': 'SNAME 3' }]

從前端

<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選項工作是這樣的:

  1. 檢索整個項目
  2. d只有item.name在選項 isplay(選擇)
  3. 雖然通過每個項目在JSONdata範圍 變量