0

Je suis nouveau à AngularJS. J'essaie d'obtenir la case à cocher pour cocher la case à partir de la valeur précédemment sélectionnée. Je pensais que ng-class ferait l'affaire mais ce n'est pas le cas. Ai-je fait quelque chose de mal dans le code ci-dessous?La case à cocher dans le menu déroulant n'est pas vérifiée à partir de la valeur précédemment sélectionnée dans AngularJS

Voici mon code HTML:

<ul class="dropdown-menu menu-content" uib-dropdown-menu> 
     <li ng-repeat="value in values" > 
     <label><input type="checkbox" ng-class="{'checked' : value.selected, 'active' : value.selected}" ng-click="$ctrl.toggleValue(value)">{{value.valueName}}</label></li> 
</ul> 

Répondre

0
<body> 

    <script> 
    var app = angular.module("myShoppingList", []); 
    app.controller("myCtrl", function($scope) { 
     // dummy data 
     $scope.value = 1; // some value 
    }); 

    </script> 

    <div ng-app="myShoppingList" ng-controller="myCtrl"> 

    <input type="checkbox" ng-checked="value === 1"> 
    </div> 


</body> 

Utilisation directive vérifiée ng-angulaire de intégré.

+0

J'ai essayé à la fois ng-checked = "value.selected" et ng-model = "value.selected" et ils ont tous deux fonctionné mais je ne sais pas quelles sont les différences. Une chose que je remarque est que ng-model ne fonctionne pas sur l'affichage dynamique des valeurs multi-sélectionnées dans le menu déroulant bootstrap. Quelque chose de similaire à ce https://codepen.io/anon/pen/pjagZR mais avec des valeurs multi-sélectionnés. (Référence de https://stackoverflow.com/questions/33278097/how-to-display-the-selected-item-on-bootstrap-dropdown-title-in-angular) – CiCi

+0

ng-checked est la directive angulaire fournie qui marque la case à cocher comme vérifié si sa valeur est véridique. Utilisez-le à la place de ng-model pour éviter tout bug inattendu car il est fait dans ce but. –