/ / Zresetuj wszystkie formanty formularzy do poprawnych / nieskazitelnych, ale zachowaj istniejące wartości formularzy - kątowe

Zresetuj wszystkie formanty formularzy do poprawnych / nieskazitelnych, ale zachowaj istniejące wartości formularzy - kątowe

Używam formularzy opartych na szablonach w Angular 5. Mam Field A i a Field B. W zależności od tego Field A odpowiada, może to zrobić Field B nieważny.

Przesyłam więc formularz z wartością Field A sprawia, że Field B niepoprawne i pokażę weryfikację obok Field B. Teraz zmieniam Field A wartość do zrobienia Field B ważny. Przesyłam mój formularz, ale Field B wciąż ma ng-invalid na nim, ponieważ go nie dotknąłem ... Ja tylko zmodyfikowałem Field A.

Czy istnieje sposób, w jaki mogę usunąć wszystkie walidacje (ng-invalid) z każdej kontroli, kiedy idę przesłać mój formularz? Albo w jaki sposób mogę sobie z tym poradzić?

Odpowiedzi:

1 dla odpowiedzi № 1

W przypadku zmiany twojego Pole A możesz to zrobić:

(change)="yourForm.controls.fieldB.updateValueAndValidity()"

Nie próbowałem go, jeśli to działa, ale możesz spróbować:

(change)="fieldB.updateValueAndValidity()"