Ich habe viele ng-xxxx-Optionen gesucht und ausprobiert, konnte aber keine finden. Ich möchte nur eine Funktion in der Steuerung aufrufen, wenn das Optionsfeld ausgewählt ist.
Es könnte also ähnlich sein wie folgt: (Natürlich funktioniert der folgende Code nicht)
<input type="radio" ng-model="value" value="one" ng-click="checkStuff()"/>
Gibt es eine Möglichkeit, das zu erreichen, was ich will?
value
macht es ziemlich verwirrend.ng-change
... aber Sie können mehrere Event-Handler (z. B. eineng-change=...
auf jederinput
) vermeiden, indem Sie Methode 2 verwenden: Jede Eingabe erfordert eineng-model
und dann haben Sie eine einzigewatch
Abhörfunktion für die ändern ...Sollte ngChange anstelle von ngClick verwenden, wenn die Triggerquelle nicht von click stammt.
Ist das unten, was Sie wollen? Was genau funktioniert in Ihrem Fall nicht?
quelle
In neueren Versionen von Angular (ich verwende 1.3) können Sie das Modell und den Wert festlegen. Die Doppelbindung erledigt die gesamte Arbeit, die in diesem Beispiel ausgeführt wird, wie ein Zauber:
quelle
Für dynamische Werte!
in der Steuerung
quelle
Ein anderer Ansatz ist
Object.defineProperty
das Festlegenvalue
als Getter-Setter-Eigenschaft im Controller-Bereich. Bei jeder Änderung der Value-Eigenschaft wird eine im Setter angegebene Funktion ausgelöst:Die HTML-Datei:
Die Javascript-Datei:
Siehe diesen Plunker für die Implementierung
quelle
Ich bevorzuge die Verwendung von ng-value mit ng-if. [ng-value] behandelt Triggeränderungen
quelle
quelle