2016-03-10 38 views
0

我以下相關的HTML代碼:如何使用AngularJS從控制器中設置<md-select>的<md-option>選項值?

<form name="bankDetailsForm" action="save" method="POST" ng-init="getBankDetails()"> 
    <md-input-container class="md-block" style="margin-top:0px;" flex=100> 
    <label>Transaction Type</label> 
    <md-select required ng-model="bankDetails.transactionType" ng-change="editField()"> 
     <md-option ng-repeat="type in transactionTypes" value="{{type}}">{{type}} 
     </md-option> 
    </md-select> 
    <div ng-messages="bankDetailsForm.transactionType.$error"> 
     <div ng-message="required">Please select Transaction type</div> 
    </div> 
    </md-input-container> 
</form> 

各個控制器代碼是如下:

var app = angular.module('app_name'); 
var isEmpty = true; 

app.controller("bankDetailsController", [ "$scope", "$http", "config", "$mdToast", function($scope, $http, config, $mdToast) { 
    $scope.bankDetails = {}; 
    $scope.transactionTypes = { 
       NEFT : "NEFT", 
       IMPS : "IMPS", 
       WALLET : "WALLET", 
       }; 
    $scope.getBankDetails = function() { 
    $http.get(config.webServicesUrl.bankDetails, headerConfig).success(function(data) { 
     if (data.body) { 
     $scope.bankDetails.transactionTypes = $scope.transactionTypes.IMPS; 
     isEmpty = false; 
     } 
    }).error(function(error) { 
     console.log("Error : " + error.error); 
    }); 
    }; 
}]); 

我想要的值「IMPS」來在下拉上形式負載被選擇用於交易類型。

我試過但我不能。 那麼有人可以糾正我的代碼,以便在下拉菜單中預設值「IMPS」嗎?

謝謝。

P.S. :請忽略ng-change =「editField()」等變量。他們已經在配置文件中定義並且工作正常。所以請忽略它們。

+0

你肯定通過的$ HTTP您的AJAX請求是成功,你得到的迴應一些'body'財產? – Arkantos

回答

2

這是一個錯字錯誤。據此,ng-model="bankDetails.transactionType",您的選擇預計transactionType,但您正在填充transactionTypes

更改以下

$scope.bankDetails.transactionTypes = $scope.transactionTypes.IMPS; 

$scope.bankDetails.transactionType = $scope.transactionTypes.IMPS; 
相關問題