2014-03-04 40 views
0

我想知道如何從json集合中迭代創建選取列表(下拉列表)。AngularJS使用選項迭代創建選項列表

我有兩個所需的列,一個代表'主'類別,另一個代表'二級'類別。

我想要右欄爲每個'主'類別只有一個字符串,然後左欄將有一個選項列表中的第二類別的選項。我也試圖做的是按類型分組。所以基本上會有按類型分組的按鈕組。用的「字符串」的兩列一個段,然後低於一個與「數字」的兩列另一部分等

--Numbers--

色譜柱1 ||第2列

標籤||選項列表

--String -

第1列||第2列

標籤||選項列表

- 波羅爾人 -

第1列||第2列

標籤||選擇列表

function MyCtrl($scope) { 
$scope.players = [ 
    {type: 'String', org: 'primary', name: 'something__c', label: 'Something'}, 
    {type: 'Number', org: 'primary', name: 'something_else__c', label: 'Something Else'}, 
    {type: 'String', org: 'primary', name: 'obscure__c', label: 'Obscure'}, 
    {type: 'String', org: 'primary', name: 'else__c', label: 'Else'}, 
    {type: 'String', org: 'secondary', name: 'some__c', label: 'Some'}, 
    {type: 'Number', org: 'secondary', name: 'thing__c', label: 'Thing'}, 
    {type: 'Number', org: 'secondary', name: 'sanity_check__c', label: 'My Sanity'} 
]; 

}

使用教程,我只能儘量讓儘可能什麼是在這個提琴:http://jsfiddle.net/GV7KZ/5/

謝謝你的任何和所有的指導。

回答

0

我假設你的意思是'org'而不是類別,因爲org是'primary'和'secondary'值唯一的節點。我也許想用'過濾'而不是'過濾'來定製你的'組'。

我對你的小提琴做了一些改變,將兩者分開。讓我知道這是否讓你更接近你想要的。

<tr ng-repeat="player in players|filter:'primary'"> 
    <td> 
     {{player.label}} 
    </td> 
<td> 
    <select> 
      <option ng-repeat="player in players|filter:'secondary'" value="{{player.name}}">{{player.label}}</option> 
    </select> 
</td> 

http://jsfiddle.net/GV7KZ/6/