Frage

Ich habe versucht, das ng-geprüfte Beispiel so zu ändern, dass durch Klicken auf eines der Kontrollkästchen das andere automatisch aktualisiert wird.

Wenn Sie auf A, dann auf B und dann wieder auf A klicken, wird nicht das getan, was ich erwarte.

Welchen Teil der Dokumentation sollte ich mir ansehen, um zu verstehen, was passiert?

http://jsfiddle.net/cantcopy/ev62U/

War es hilfreich?

Lösung

Warum verbinden Sie nicht beide Kontrollkästchen mit demselben Modell?

<div ng-app>
  A - Check me to check both: 
    <input type="checkbox" ng-model="master"><br/>
  B - Check me to check both:
    <input type="checkbox" ng-model="master">
</div>​

http://jsfiddle.net/ev62U/133/

==================================================================================

Um deine Geige zu erklären:

ng-checked aktualisiert das Modell nicht, sondern nur die Ansicht (Kontrollkästchen), sobald sich der Ausdruck ändert.

Klicken Sie auf A:der master wird geändert in true, das Kontrollkästchen B beobachtet seine ng-checked wert und aktualisiert daher auch die zu überprüfende Ansicht.

Klicken Sie auf B:der master2 wird geändert in false, das Kontrollkästchen A beobachtet seine ng-checked wert und aktualisiert daher auch die Ansicht, die deaktiviert ist.

Klicken Sie auf A:der master ist eingestellt auf true und das ist nicht wirklich eine Änderung, da der Wert bereits war true, also löst es keine Aktualisierung von B aus.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top