2016-08-18 2 views
0

Ich versuche, das erforderliche Attribut für ein einzelnes Eingabefeld in einer eckigen Form beim Senden zu deaktivieren, wenn eine bestimmte Bedingung nicht erfüllt ist. Ich habe folgendes versucht:Angular JS Validation - So deaktivieren Sie die Felder für ein einzelnes Feld

form.ChangeCreditCard.$setValidity("required", false); 

Und auch manuell die $ gültigen Zustand für die Feldeinstellung:

form.ChangeCreditCard.$valid = true; 

Aber das Feld und damit die Form ist noch ungültig. Gibt es eine Möglichkeit, die Validierung für ein einzelnes Feld auf diese Weise zu deaktivieren?

Antwort

2

ngRequiredhttps://docs.angularjs.org/api/ng/directive/ngRequired

Die Richtlinie setzt das gewünschte Attribut auf dem Element, wenn die Angular Ausdruck innerhalb ngRequired true ergibt. Eine spezielle Direktive für die Einstellung erforderlich ist notwendig, weil wir nicht Interpolation innerhalb erforderlich verwenden können. Weitere Informationen finden Sie in der Interpolationsanleitung. info.

+0

Danke, das war der Weg zu gehen. Interessant, gibt es eine Möglichkeit, dies mit $ setValidity zu tun? – juju

+1

Ja. Hier ist eine funktionierende jsfiddle http://jsfiddle.net/gm97L3r5/ form.ChangeCreditCard. $ SetValidity ("erforderlich", falsch); das sollte auf wahr gesetzt sein :-) Es bedeutet, dass es gültig ist. – krutkowski86

+0

oh so einfach. Vielen Dank – juju

Verwandte Themen