user8427641
user8427641

Reputation: 127

Pre-select value in md-select - AngularJS

Below is my md-select dropdown. How do I preselect a list option from controller?

<md-input-container ng-init="Vacancies()" class="md-block" style="margin:0 !important;">
    <md-select ng-model="Vacancy" placeholder="Select a Vacancy" id="Md-select1" name="vacancy1" ng-change="setCriteria(Vacancy)">
    <md-option ng-value="vac" ng-repeat="vac in vacancylist">{{vac.JobTitle}}</md-option>
</md-select>
{{vacancy.JobTitle}}

Upvotes: 2

Views: 1885

Answers (1)

Maxim Shoustin
Maxim Shoustin

Reputation: 77904

I know at least 2 options to achieve that:

Option 1

add to HTML: ng-selected="options.indexOf(option) == 1"

Something like:

<md-select ng-model="selectedOption" md-on-open="mdSelectOnOpen()">          
         <md-option ng-repeat="option in options" ng-value="option" 
                    ng-selected="options.indexOf(option) == 1"
                    >{{option.name}}</md-option>

    </md-select>

Option 2

define md-select ng-model

<md-select ng-model="selectedOption.id" md-on-open="mdSelectOnOpen()">      
     <md-option ng-repeat="option in options" ng-value="option.id"                  
                >{{option.name}}</md-option>     
</md-select>

where:

$scope.options = [];
for(var i=1;i<=100;i++) {
  $scope.options.push({id: i, name: "option " + i});
}

 $scope.selectedOption = $scope.options[1];

Demo Codepen

Upvotes: 1

Related Questions