ng-options affiche vierge sélectionné l'option, même si ng-model est défini
J'ai créé un plunkr de souligner le problème, c'est peut-être parce que la source de la ng-repeat est une fonction, je ne suis pas sûr, mais jusqu'à présent, j'ai tout essayé pour résoudre ce problème, et je n'ai pas la gale.
plunkr:
http://plnkr.co/edit/qQFsRM?p=preview
HTML
<html>
<head>
<script data-require="[email protected]" data-semver="1.2.0-rc1" src="http://code.angularjs.org/1.2.0rc1/angular.js"></script>
<link rel="stylesheet" href="style.css" />
<script src="script.js"></script>
</head>
<body ng-app='myApp' ng-controller='mainCtrl'>
<ng-include src="'menu.html'">
</ng-include>
</html>
Script
var app = angular.module('myApp', []);
app.controller('mainCtrl', function($scope, $httpBackend){
$scope.model = {};
$scope.model.myJobs = {};
$scope.refreshJobs = function(){
}
});
app.controller('menuCtrl', function($scope){
$scope.model.locations = function(){
var loc = [];
loc[1] = 'Dublin';
loc[2] = 'Stockholm';
loc[3] = 'New Jersy';
$scope.model.selectedLocationDef = loc.indexOf('Dublin');
return loc;
}
$scope.model.selectedLocation = $scope.model.selectedLocationDef;
$scope.$watch('model.selectedLocation', function(location){
$scope.refreshJobs(location);
});
});
- C'est une bonne chose à poster des liens externes vers votre live exemples, mais ce serait mieux de poster le code réel de cette question (trop). Que faire si plunkr passe en mode hors connexion, à un certain moment?
- J'ai révisé ma question
Vous devez vous connecter pour publier un commentaire.
Dernière, j'ai vérifié, Angulaire ne prend pas en charge la capacité de lier les clés du tableau de ng-model via ng-options. Vous pouvez, cependant, imiter ce comportement à l'aide d'un objet de hachage:
menu.html:
script.js:
Garder à l'esprit que ce sera lier les entiers de modèle de votre appareil, et non pas les villes elles-mêmes. Si vous voulez que votre modèle de valeur à
Dublin
,Stockholm
, ouNew Jersey
, il suffit de faire:menu.html:
script.js:
Si vous utilisez un tableau comme modèle, puis le modèle est une chaîne de caractères n'est pas un nombre. Si vous avez besoin de convertir le nombre en chaîne de caractères. Juste essayer