2016-10-29 4 views
1

私はいくつかの数学関数を行うために私のコントローラのドロップダウンでユーザーが選択する配列リストの2番目の値の変数を取得しようとしています。コントローラのドロップダウン選択から配列の2番目の値の変数を取得するには?

$scope.dropdown = [ 
{name:'Name', value:'123'}] 

ユーザーがドロップダウンから「名前」を選択したときに123をプルするようにしています。私は、私のようなフロントエンドでこれを行うことができる方法を知ってる:

<p> {{dropdown.value}} </p> 

しかし、私は、コントローラでそれを行う方法を見つけ出すように見えることはできません。

私が試してみた:

var variable = $scope.dropdown.value; 
var variable = $scope.dropdown[0].value; 
var variable = $scope.dropdown.value[0]; 
をしかし、それのどれも動いていないようにみえます。

私は今で働いているものの例は次のとおりです。

$scope.input1 = ""; 

var rate = 2; 

$scope.dropdown = [ 
    {name:'Name', value:'123'} 
]; 

var activities = (Number($scope.input1) * $scope.dropdownSelection.value * rate)/2; 

console.log(activities); 

だから、基本的に、私は定義された変数と一緒にユーザ入力とユーザーのドロップダウン選択からコントローラに数学関数を実行するために探しています私は、配列内のユーザーがドロップダウン値を選択する方法を理解できないようです。

答えて

2

理想的$filterを使用することになり、あなたのコントローラコードが

app.controller('MainCtrl', ['$scope', '$filter', function($scope, $filter) { 

    //array 
    var items = [{ id: "5", country: "UAE" }, { id: "4", country: "India" }]; 

    //search value 
    var id2Search = "4"; 

    //filter the array 
    var foundItem = $filter('filter')(items, { id: id2Search }, true)[0]; 

    //get the index 
    var index = items.indexOf(foundItem); 
}]); 
1

以下のようなものかもしれない角度jsの方法は、私は、ユーザーが使用して移入され、ドロップダウンから選択した値を見つけるために探していると仮定コントローラのドロップダウン配列

ここにあなたができることがあります。

var app = angular.module("sampleApp", []); 
 

 
app.controller("sampleController", ["$scope", 
 
    function($scope) { 
 
    $scope.input1 = 1; 
 
    $scope.dropdownValues = [{ 
 
     name: 'Name', 
 
     value: 123 
 
    }, { 
 
     name: 'Name-1', 
 
     value: 456 
 
    }, { 
 
     name: 'Name-2', 
 
     value: 789 
 
    }]; 
 

 
    $scope.dropdownValue = 123; 
 
    var rate = 10; 
 

 
    $scope.$watch(function() { 
 
     return $scope.dropdownValue 
 
    }, function() { 
 
     $scope.activities = (Number($scope.input1) * $scope.dropdownValue * rate)/2; 
 
    }); 
 

 
    } 
 
]);
div.value { 
 
    padding-top: 15px; 
 
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.8/angular.min.js"></script> 
 
<div ng-app="sampleApp"> 
 
    <div ng-controller="sampleController"> 
 
    <select ng-model="dropdownValue"> 
 
     <option ng-repeat="item in dropdownValues" ng-value="item.value"> 
 
     {{item.name}} 
 
     </option> 
 
    </select> 
 
    <div class="value"> 
 
     Selected Value : {{dropdownValue}} 
 
    </div> 
 

 
    <div> 
 
     Activities : {{activities}} 
 
    </div> 
 
    </div> 
 
</div>

関連する問題