Les deux sens de la liaison de données en Choisir 2 pour AngularJS ne fonctionne pas
Je vais avoir des problèmes avec l'utilisation de la Select2 plugin dans AngularJS. Je peux charger les éléments d'amende, et de récupérer l'élément sélectionné à partir de mon ng-model, mais j'ai des questions, la liste déroulante n'est pas mis à jour si je mettre à jour le ng-model.
À mon avis, le code ressemble à ceci:
<select ui-select2 data-placeholder="All" id="filtersSelect" ng-model="chosenFilterItem" ng-options="item.text for item in filterItems">
Dans mon contrôleur, j'ai le code suivant, qui récupère les éléments et le lie à la liste:
$scope.fetchFilters = function(){
$http.get($scope.filtersUrl).then(function(result){
$scope.filterItems = result.data;
$scope.chosenFilterItem = result.data[3];
if(!$scope.$$phase) {
$scope.$apply();
}
});
}
Comme vous pouvez le voir j'ai juste essayer de mettre le 3ème point sur la dropdownlist, mais aucun élément n'est présélectionnée. Est-il une autre façon de contourner présélectionner une liste déroulante?
Veuillez noter qu'il est recommandé d'utiliser la point-notation, afin de garder vos données à une seule variable, par exemple.
data
. Pour plus d'info, voir cette tête d'oeuf.io vidéo tutoriel: goo.gl/373IaOriginalL'auteur Dofs | 2013-06-16
Vous devez vous connecter pour publier un commentaire.
Angular-ui/ui-select2 github états de la page:
Donc, pour vous sauver de maux de tête je recommande également à l'aide des options avec ng-repeat:
DÉMO PLUNKER
OriginalL'auteur Stewie
Stewie posté le droit chemin pour mettre en œuvre Select2, mais il est à l'aide de "statique" éléments.
La différence est que angulaires rend select2 avant d'avoir les éléments appelés via ajax, dans ce cas, vous devez ajouter une interface utilisateur-si la déclaration afin d'ajouter de la directive seulement après que vous avez données.
Si cela ne fonctionne pas merci de créer un jsfiddle avec ajax éléments de chargement et je vais y travailler!
Je pense que Dofs nécessite une première présélection de l'élément à l'intérieur de select2 directive. Il avait un travail, mais l'effet de" wold être une première valeur vide et après ajax finitions, il semble que la valeur correcte. À l'aide de l'interface utilisateur-si le simple fait de cacher le vide initial de la valeur.
Bien sûr, mais sa question n'est pas sur le masquage de l'élément jusqu'à ce que les données sont chargées.
OriginalL'auteur Akallabeth