Ich habe ein Problem, das ich mit anderen verwandten SO Q/A nicht lösen konnte.Mehrere Radiobuttons innerhalb mehrerer wiederholter Objekte - AngularJS
Dies sind meine Situation:
- Artikel in Einzelteile -> mehr wiederholten Elemente
- jedes Element hat n-Tasten (mit ng-repeat)
(ng-repeat)
Ich bin in der Lage, jedes Element mit seinen eigenen Tasten richtig zu sehen, aber ich kann nicht die richtige Taste beim Klicken auswählen.
Wenn ich auf eine Schaltfläche außerhalb der Schaltflächen des ersten Elements klicke, funktioniert das Ereignis nicht richtig, es löst Ereignisse auf dem ersten Element aus.
Ich möchte das gleiche Ergebnis wie in this Plunker I just made erreichen.
Hier ist meine Original-Code:
Vorlage, die eine Einzelelementvorlage für jeden Artikel enthält:
<div class="myClass" ng-repeat="item in items">
<div ng-include src="mySingleElement"></div>
</div>
Single Item Vorlage, die mehrere Radiobuttons hat:
<ul>
<li ng-repeat = "button in survey.buttons">
<input type="radio" id="radio_{{$parent.$index}}"
name="radio{{$parent.$index}}""/>
<label for="radio_{{$parent.$index}}">
<span></span>{{button.text}}
</label>
</li>
</ul>
Hier sind einige Bilder, in denen ich das Verhalten in meiner Anwendung zeige:
Starter-Situation, z.B. mit zwei Artikeln:
Im ersten Element kann ich nur auf den ersten Radio-Button klicken, wenn ich auf andere Knöpfe klicke, überprüfen sie immer den ersten.
Der Versuch, mit dem zweiten Element zur Interaktion:
Es passiert das gleiche wie in der ersten, für alle anderen Elemente.
ich wirklich nicht bekommen, warum es nicht richtig, wie in dem Plunker funktioniert. Ich habe den Plunker mit genau dem gleichen Code erstellt, aber mit einem einzelnen Artikellayout mit
ng-include
in einer separaten Datei.
Was mache ich falsch und wie kann ich das lösen? Wird es durch die ng-include
verursacht?
Warum zuweisen Sie Eltern Index zum Funk buttons.Due dazu alle Radiobuttons haben gleiche Id .Es wegen sein könnte, dass seine immer der erste ausgewählt. – Rambler
Wenn ich nicht $ Eltern verwenden, ist das einzige Element, das Schaltflächen überprüfen kann, das erste, weiß nicht warum. – AndreaM16