Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

170
Visualizações
AngularJs - modelo ng en un SELECCIONAR

JSfiddle

Problema:

Tengo un elemento SELECT en mi página, que se completa con ng-repeat . También tiene un ng-model que tiene un valor predeterminado.

Cuando cambio el valor, el ng-model adapta, está bien. Pero la lista desplegable muestra una ranura vacía en el lanzamiento, donde debería tener el elemento con el valor predeterminado seleccionado en su lugar.

Código

 <div ng-app ng-controller="myCtrl"> <select class="form-control" ng-change="unitChanged()" ng-model="data.unit"> <option ng-repeat="item in units" ng-value="item.id">{{item.label}}</option> </select> </div>

Con JS:

 function myCtrl ($scope) { $scope.units = [ {'id': 10, 'label': 'test1'}, {'id': 27, 'label': 'test2'}, {'id': 39, 'label': 'test3'}, ] $scope.data = { 'id': 1, 'unit': 27 } };
over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Puede usar la directiva ng-selected en los elementos de opción. Toma expresión que si es veraz establecerá la propiedad seleccionada.

En este caso:

 <option ng-selected="data.unit == item.id" ng-repeat="item in units" ng-value="item.id">{{item.label}}</option>

Manifestación

 angular.module("app",[]).controller("myCtrl",function($scope) { $scope.units = [ {'id': 10, 'label': 'test1'}, {'id': 27, 'label': 'test2'}, {'id': 39, 'label': 'test3'}, ] $scope.data = { 'id': 1, 'unit': 27 } });
 <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> <div ng-app="app" ng-controller="myCtrl"> <select class="form-control" ng-change="unitChanged()" ng-model="data.unit"> <option ng-selected="data.unit == item.id" ng-repeat="item in units" ng-value="item.id">{{item.label}}</option> </select> </div>

over 4 years ago · Santiago Trujillo Relatório

0

prueba el siguiente código:

En tu controlador:

 function myCtrl ($scope) { $scope.units = [ {'id': 10, 'label': 'test1'}, {'id': 27, 'label': 'test2'}, {'id': 39, 'label': 'test3'}, ]; $scope.data= $scope.units[0]; // Set by default the value "test1" };

En tu página:

 <select ng-model="data" ng-options="opt as opt.label for opt in units "> </select>

violín de trabajo

over 4 years ago · Santiago Trujillo Relatório

0

No necesita definir etiquetas de opción, puede hacerlo usando la directiva ngOptions: https://docs.angularjs.org/api/ng/directive/ngOptions

 <select class="form-control" ng-change="unitChanged()" ng-model="data.unit" ng-options="unit.id as unit.label for unit in units"></select>
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda