2016-10-22 33 views
0

因此我有一個下拉菜單並添加了一些值,如下所示。 我希望程序根據從下拉框中選擇的選項來做東西。AngularJS:用戶在下拉菜單中進行選擇後調用函數

angular.module('priceCalculator', []) 
.controller("mainCtrl", ['$scope', function($scope) { 
$scope.data = { 
    availableOptions: [ 
    {id: 0, name: 'Please Select'}, 
    {id: 1, name: 'PVC Red Extra'}, 
    {id: 2, name: 'Alu Standard'}, 
    {id: 3, name: 'SKS Classic Decor'}, 
    {id: 4, name: 'SKS Aluminiu Alb'} 
    ], 

    selectedOption: {id: 0, name: 'Please Select'} 
}; 
}]); 

我想我可以用一個switch語句

$scope.doStuff = function() { 
    switch(id from availableOptions) { 
    case 0: 
    // do stuff, I want to read file based on inputs I shall also get from user 
    break; 
    default: 
    // do stuff 
    }; 
}; 

怎麼辦,我需要做這做呢?很抱歉,如果它很容易爲大家,我真的很小白在編碼

這裏的HTML部分

<label>Select Shutter Type</label> 
    <!-- Use ngOption to select shutter type --> 
    <select ng-options="option.name for option in data.availableOptions track by option.id" ng-model="data.selectedOption"> 
    </select> 
+0

是的,你可以做到這一點,現在問題是什麼? – Sajeetharan

回答

0

如果我理解正確的,你想叫你的doStuff功能,當選擇更改。您可以使用ng-change做到這一點:

<select 
    ng-options="option.name for option in data.availableOptions track by option.id" 
    ng-model="data.selectedOption" 
    ng-change="doStuff(option)"> 

然後,你可以聲明doStuff這樣的:

$scope.doStuff = function(selectedOption) { 
相關問題