Comment vérifier si tout est bien coché dans Angulaire
Est-il de toute fonction ou ng-quelque chose pour vérifier si l'une de ces Cases sont cochées?
J'ai des valeurs à travers le ng-click="fonction()" et transmettre les valeurs à travers. Je peux aller à pied, et à vérifier mon tableau si la valeur du produit est à l'intérieur.
Je veux activer/désactiver le "next"bouton si une Case est
cochée.
Quel est le moyen le plus facile?
- La accepté de répondre semble inutilement compliqué. Veuillez voir la mienne ci-dessous.
- Il n'est pas. Vos solutions couvre tout juste UNE case à cocher, je veux le voir dans le contrôleur en cas de l'une des dizaines de cases à cocher est cochée.
- Vous avez raison. Je dois avoir mal lu votre question. J'ai édité ma réponse.
Vous devez vous connecter pour publier un commentaire.
Vous pouvez faire quelque chose comme:
Et un modèle:
De travail: http://jsfiddle.net/cherniv/JBwmA/
Mise à JOUR: Ou vous pouvez aller à peu de manière différente , sans l'aide de
$scope
's$watch()
méthode, comme:Et dans un modèle de faire:
Violon: http://jsfiddle.net/uzs4sgnp/
$scope.bandChoosed = function() { return $scope.chkbxs.reduce((acc, cur) => acc.val || cur.val); };
Si vous ne souhaitez pas utiliser un watcher, vous pouvez faire quelque chose comme ceci:
ng-click
pourng-change
pour qu'il fonctionne correctementSi vous avez seulement une case à cocher, vous pouvez le faire facilement avec juste ng-modèle:
Et initialiser $champ d'application.vérifié dans votre Contrôleur (par défaut=false). Le officiel doc décourage l'utilisation de ng-init dans ce cas.
Essayez de penser en termes de modèle et de ce qui se passe à ce modèle lorsqu'une case est cochée.
En supposant que chaque case est lié à un champ sur le modèle avec ng-model alors la propriété sur le modèle est modifié à chaque fois qu'une case à cocher est cliqué:
et dans le contrôleur:
Le bouton suivant ne devrait être disponible dans certaines circonstances, ajoutez la ng-désactivé
la directive sur le bouton:
Maintenant le bouton suivant ne devraient être disponibles lorsque vous fooSelected est vrai ou baaSelected est vrai et nous avons besoin de regarder toute modification de ces champs pour s'assurer que le bouton suivant est disponible ou pas:
Ci-dessus suppose qu'il y a seulement quelques cases qui affectent la disponibilité de la prochaine bouton, mais il pourrait être facilement modifié pour fonctionner avec un plus grand nombre de cases à cocher et les utiliser $watchCollection pour vérifier les changements.
C'est un re-post pour insérer le code aussi.
Cet exemple inclus:
- Une liste d'objets
- Chaque objet as de la liste des enfants.
Ex:
Je vais 3 liste comme ci-dessus et je vais l'ajouter à une liste d'objets
Alors je vais faire comment pour show case avec plusieurs groupe:
HTML:
Violon: exemple
J'ai un échantillon de données multiples avec leurs sous-nœud
3 liste , chaque liste a de l'attribut et de l'enfant de l'attribut:
Les ajouter à la Matrice :
Montrer en html:
Et voici la solution pour les vérifier:
jsfiddle démo