tablas formularios example datos contador angularjs ng-options

angularjs - formularios - tablas angular 4



Configuración de valores seleccionados para ng-opciones elementos de selección enlazados (3)

Puede utilizar el campo ID como el identificador de igualdad. No puede usar el objeto adhoc para este caso porque AngularJS verifica la igualdad de referencias cuando compara objetos.

<select ng-model="Choice.SelectedOption.ID" ng-options="choice.ID as choice.Name for choice in Choice.Options"> </select>

Fiddle con el código correspondiente: http://jsfiddle.net/gFCzV/7/

Estoy tratando de establecer el valor seleccionado de un menú desplegable que está vinculado a una colección secundaria de un objeto al que se hace referencia en una repetición ng. No sé cómo configurar la opción seleccionada, ya que no puedo hacer referencia a la colección a la que está vinculado de ninguna manera que yo sepa.

HTML :

<div ng-app="myApp" ng-controller="SomeController"> <div ng-repeat="Person in People"> <div class="listheader">{{Person.firstName}} {{Person.lastName}}</div> <div class="listitem" ng-repeat="Choice in Person.Choices"> {{Choice.Name}}: <select ng-model="Choice.SelectedOption" ng-options="choice.Name for choice in Choice.Options"></select> {{Choice.SelectedOption.ID}} </div> </div> </div>

JS :

var myApp = angular.module(''myApp'', []); myApp.controller("SomeController", function($scope) { $scope.People = [{ "firstName": "John", "lastName": "Doe", "Choices": [ { "Name":"Dinner", "Options":[{Name:"Fish",ID:1}, {Name:"Chicken",ID:2}, {Name:"Beef",ID:3}], "SelectedOption":{Name:"Chicken",ID:2} //this doesn''t work }, { "Name":"Lunch", "Options":[{Name:"Macaroni",ID:1}, {Name:"PB&J",ID:2}, {Name:"Fish",ID:3}], "SelectedOption":"" } ], }, { "firstName": "Jane", "lastName": "Doe" }]; });

¿Es este el único caso en el que debería estar usando ng-init con un SelectedIndex en el modelo?


Si usa AngularJS 1.2, puede usar ''seguimiento por'' para decirle a Angular cómo comparar objetos.

<select ng-model="Choice.SelectedOption" ng-options="choice.Name for choice in Choice.Options track by choice.ID"> </select>

Fiddle actualizado http://jsfiddle.net/gFCzV/34/


Usando ng-seleccionado para el valor seleccionado. He implementado exitosamente el código en AngularJS v1.3.2

<select ng-model="objBillingAddress.StateId" > <option data-ng-repeat="c in States" value="{{c.StateId}}" ng-selected="objBillingAddress.BillingStateId==c.StateId">{{c.StateName}}</option> </select>