簡體   English   中英

如何在ng-options AngularJS中設置默認值

[英]how to set a default value in ng-options AngularJS

我想使用angular ng-options為我的select組件設置一個默認值。我已經看過有關此問題的其他主題,但是我嘗試在我的情況下使用它,但沒有解決..所以我有一個select組件

<select ng-options="dis.entidade.idEntidade as dis.entidade.nome for dis in distritos" ng-model="distrito.entidade.idEntidade" class="form-control">
    <option></option>   
</select>

我想設置一個默認值。

您可以設置為no-model屬性。 例:

$scope.distrito.entidade.idEntidade = $scope.distritos[0].entidade.idEntidade;

 angular.module('app', []).controller('select', function($scope) { $scope.distrito = {}; $scope.distrito.entidade = {}; $scope.distritos = [{ entidade: { nome: 'test1', idEntidade: 1 } }, { entidade: { nome: 'test2', idEntidade: 2 } }]; $scope.distrito.entidade.idEntidade = $scope.distritos[0].entidade.idEntidade; }); 
 <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> <div ng-app="app" ng-controller="select"> <select ng-options="dis.entidade.idEntidade as dis.entidade.nome for dis in distritos" ng-model="distrito.entidade.idEntidade" class="form-control"> </select> </div> 

在您的控制器中,您可以設置$scope.distrito.entidade.idEntidade = "defaultValue" ng-model是選定的值,因此,如果未在控制器中對其進行初始化,則該值將是未定義的。 如果在初始化期間為相關模型設置值,則這將是默認選擇的值。

 var app = angular.module('myApp', []); app.controller('myCtrl', function($scope) { $scope.somethingList = []; $scope.somethingList.push("Something1"); $scope.somethingList.push("Something2"); $scope.somethingList.push("Something3"); $scope.selectedSomething = $scope.somethingList[0]; }); 
 <!DOCTYPE html> <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script> </head> <body> <div ng-app="myApp" ng-controller="myCtrl"> <select ng-options="something for something in somethingList" ng-model="selectedSomething"></select> </div> </body> </html> 

<select ng-options="dis.entidade.idEntidade as dis.entidade.nome for dis in distritos" ng-model="distrito.entidade.idEntidade" class="form-control">
<option>THIS IS YOUR DEFAULT VALUE</option>   

如果您想要具有某種含義的默認值,則應在控制器中進行設置,例如:

if (!$scope.distrito.entidade.idEntidade)
  $scope.distrito.entidade.idEntidade = 'Some default value';

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM