user7397787
user7397787

Reputation: 1470

Pass dropdown selected value in ng-blur

I am trying to pass selected dropdown option value into leaveBalance() method.
But am getting undefined how to pass it?

<body ng-app="myApp" ng-controller="myCtrl" ng-init="init()">
                    <div>
                        <label>Leave Type</label>
                        <select type="text" id="levType" ng-blur="leaveBalance(data.id)"><option value="" selected="selected">Select</option><option data-ng-repeat="data in leaveTypes" value="{{data.id}}">{{data.Name}}</option></select>
                    </div>
</body>
<script>
    var app = angular
                    .module("myApp", [])
                    .controller("myCtrl", function ($scope, $http) {
                        $scope.init = function () {
                            $http.post("/user/getList").then(function (response) {
                                $scope.leaveTypes = response.data;
                            })
                        }
                        $scope.leaveBalance = function (id) {
                            alert(id)
                        }
                    })
</script>

Upvotes: 0

Views: 824

Answers (1)

Sajeetharan
Sajeetharan

Reputation: 222582

You should use ng-model to set the selected value and pass it to the function

 <select type="text" ng-model="selectedvalue" id="levType" ng-blur="leaveBalance(selectedvalue.id)"><option value="" selected="selected">Select</option><option data-ng-repeat="data in leaveTypes" value="{{data.id}}">{{data.Name}}</option></select>

Upvotes: 3

Related Questions