/ / Нулирайте всички контроли за формуляри до валидни / девствени, но запазете съществуващите стойности на формата - ъглови

Нулирайте всички контроли за форма до валидни / девствени, но запазете съществуващите стойности на формата - ъглови

Аз използвам формуляри, задвижвани от шаблони в ъглова 5. Имам a Field A и a Field B, В зависимост от това Field A е отговорено, може да се направи Field B невалиден.

Така че представя формуляра със стойност в Field A това прави Field B невалиден и показвам валидиране до Field B, Сега, променям Field A стойност, която трябва да се направи Field B валиден. След това изпращам формуляра си, но Field B все още има ng-invalid защото не го докоснах ... Променях се само Field A.

Има ли начин да премахна всички потвърждения (ng-invalid) от всеки контрол, когато отида да подам моя формуляр? Или какъв е начинът да се справя с това?

Отговори:

1 за отговор № 1

В промяната на вашето събитие Поле A можете да направите това:

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

Аз не съм го опитал, ако тя работи, но можете да опитате:

(change)="fieldB.updateValueAndValidity()"