10
votes

Bouton radio vérifié par défaut lorsque vous utilisez NG-REPEAT

Je voulais avoir un bouton radio vérifié sur une liste de boutons radio que je présente à l'écran à l'aide de la répétition NG, mais mon code ne fonctionne pas. C'est ce que je fais: xxx

L'intention du code est d'obtenir le premier bouton radio vérifié et les autres non contrôlés. Ce code a un problème: cela ne fonctionne pas. Mais au moins, cela donne l'idée de ce que j'essaie de faire: je veux que l'un des boutons radio vérifiés par défaut, quel que soit celui qui soit.


3 commentaires

Vous devez utiliser data-ng-modèle = "$ parent.club.role" parce que vous avez utilisé ng-si


@pankajparkar, je crois que c'est ng-répéter qui crée sa propre portée, pas NG-Si


@Victor ng-si crée également une nouvelle portée, vous devez consulter docs.angularjs.org/api/ng/directive/ngif


5 Réponses :


1
votes

Vous n'avez pas besoin coché = "coché" , je pense que angular prendra en charge lui-même si vous définissez le modèle sur l'une des valeurs. Quelque chose comme: xxx

En outre, la portée peut vous déclencher ici, le modèle peut avoir besoin d'être $ parent.club.role


0 commentaires

15
votes

Le bouton radio vérifiera si la valeur de l'attribut d'entrée est égale à la valeur de modal appliquée sur le bouton radio. xxx

coché = "coché" ne fonctionnera pas dans le contexte angulaire. . Vous pouvez soit régler la valeur du bouton radio explicitement dans le contrôleur, soit vous pouvez le gérer dans la vue elle-même comme je l'ai fait dans l'exemple ci-dessus. Mais le modal doit être équivalent en fonction de l'attribut Valeur sur l'élément INDMUPT. < P> Par exemple, si modal est x sur trois boutons radio et que chaque bouton radio a une valeur différente comme A, B et C. Ensuite, X doit être égal à l'une de la valeur à vérifier.

Plunker < / a>


0 commentaires


1
votes

Si vous utilisez une liste de type primitive, la réponse de BM1729 est correcte, mais si vous utilisez des objets de la liste, regardez cet exemple: https://jsfiddle.net/9chd58mk/2/

La première partie est mauvaise, car l'objet sélectionné est identique à un élément de la liste, mais ce n'est pas même par référence. L'opérateur == est faux dans ce cas xxx

mais les deuxième et troisième exemples utilisent la référence d'élément de liste et le bouton radio vérifié. L'opérateur == est vrai dans ce cas xxx


0 commentaires

0
votes
  <md-radio-group ng-model="data.group3">
                                                    <md-radio-button value="{{o._id}}" class="md-primary" ng-repeat="o in lstDataRecord" ng-click="updTemplateId(o._id)">
                                                        <div flex-gt-sm="50" style="height: 150px; width: 250px;">
                                                            <img src="{{PageInfo_PATH}}{{o.imgUrl}}" />
                                                            {{o.displayName}}
                                                        </div>
                                                    </md-radio-button>
                                                    <md-radio-button value="active" class="md-primary" [checked]='true'> </md-radio-button>
                                                </md-radio-group>

1 commentaires

Votre réponse est uniquement du code. Veuillez l'améliorer avec des explications.