2015-02-17 100 views
0

我有一些json數據從cakePHP服務器接收。這是什麼是我目前的$scope.catalog.ConstructionMethod發現的一個片段:來自CakePHP的AngularJS ng選項數據

[ 
    { 
    "ConstructionMethod": { 
     "id": "99", 
     "title": "All Plywood", 
     "price": "0.12" 
    } 
    }, 
    { 
    "ConstructionMethod": { 
     "id": "139", 
     "title": "Plywood Sides", 
     "price": "0.05" 
    } 
    } 
] 

我想創建這樣一個選擇框...

<select ng-model="Project.ConstructionMethod" ng-options=" ... "> 

我曾嘗試沒有成功以下...

ng-options="item.title as item.ConstructionMethod for item in catalog.ConstructionMethod" 

ng-options="item.ConstructionMethod.title for item in catalog.ConstructionMethod" 

我可以迭代使用ng-repeat就好了。 :s

<p ng-repeat="item in catalog.ConstructionMethod">item.ConstructionMethod.title</p> 

任何指針或建議將不勝感激...謝謝。

+1

我會嘗試NG-選項=「item.ConstructionMethod.name作爲item.ConstructionMethod.id的項目在目錄」 – daniel 2015-02-17 22:37:35

+0

這裏是一個codepen(非常簡化的)我自己看着辦吧:■HTTP:/ /codepen.io/ryanyakich/pen/jEzrqR/ – ryan 2015-02-18 03:37:31

回答

0

簡釋上aleberguer的答案(這指出了我需要一個模型) - 我仍然有在凝視我的應用程序時選擇正確的選項時很難。整個「使用select as和track by不一起工作」的東西......所以這個解決方案不僅填充了選項,而且使它們在打開應用程序時被選中。

<select ng-model="result" ng-options="item.ConstructionMethod.title for (k, item) in catalog.ConstructionMethod track by item.ConstructionMethod.id"></select> 
1

Angular的select需要ng模型才能工作。

嘗試用下面的代碼:

<select ng-model="result" ng-options="item.ConstructionMethod as item.ConstructionMethod.title for item in catalog.ConstructionMethod"></select> 

讓我知道它的工作:)

+0

解決了這個問題。我很欣賞答案!我感到s-m-r-t ......再次感謝。 – ryan 2015-02-18 11:16:27