2015-02-11 68 views
0

我有一個要求 - 單個角度js函數根據函數的輸入參數之一動態返回範圍變量。對於控制器功能,我發現了一些關於如何返回動態範圍的示例,如如何訪問在angularjs中返回的動態範圍

$ scope [attributeId] = data.response; (attributeId是一個輸入參數,data.response是一個數組)

問題是如何在HTML中使用這樣的範圍變量?我有一個像這樣的選擇控件,它將填充下拉菜單中的值,在這種情況下應該指定爲模型和選項。

<button ng-click="getAttributeValue(getProductsModel,p.attributeId, $event)">Get Attribute Value</button> 
<select data-ng-model="attributeModel" 
    data-ng-options="a for a in attributeResponse"> 
    <option value="">-- Select Value --</option> 
</select> 

一個例子真的很有幫助。

回答

0

您應該將其分配給$scope.attributeId。之後,您可以使用ng-options指令填充它。

現在我不知道你的數據結構如何,所以這裏是汽車的一個例子。

array

$scope.cars = [ 
    { 
     id: 1, 
     name: 'Ford' 
    }, 
    { 
     id: 3, 
     name: 'Mercedes' 
    }, 
    { 
     id: 3, 
     name: 'BMW' 
    }, 
] 

而且<select>元素與填充汽車:

<select ng-model="selectedOption" ng-options="car.name for car in cars"> 

現在,您可以訪問使用$scope.selectedOption所選擇的選項。

+0

不完全。同一個函數會被多次調用不同的輸入,每次都會返回一個需要持久化的不同數據的數組。每個範圍像$ scope [101],$ scope [201],$ scope [301]被綁定到不同的下拉菜單。 – user2596838 2015-02-11 13:00:17