Dire che ho questo:Può un <select> essere associato a un array per indice in Angular.js?
$scope.items = ["foo", "bar", "baz"];
$scope.index = 1;
Come si legano che a un <select>
?
Ho provato: <select ng-model="index" ng-options="i for i in items">
ma è stata selezionata un'opzione vuota al momento del caricamento.
Questo: <select ng-model="items[index]" ng-options="i for i in items">
sembra funzionare inizialmente ma quando si modifica la selezione, il valore sugli elementi [indice] viene modificato, che ovviamente non è quello che vogliamo.
La mia soluzione è quella di mappare l'array alle coppie {num, title} ma quella logica ingombra il controller.
Non ottengo alcuna selezione iniziale con questo metodo anche se 'index = 1'. Durante il monitoraggio del valore ho scoperto che quando viene effettuata una selezione, 'index' diventa l'indice come una stringa' index = "1" '. Forse c'è un disallineamento di tipo? –
Grazie per la modifica, il gioco è fatto! Forse non è così bello, ma batte equamente il controller con un margine equo. –
@sjmulder tieni a mente che '[] .indexOf' non è presente in IE8 nel caso tu debba supportarlo :( –