如何在不使用反应式表单的情况下验证表单元素?

问题描述

我想在不使用反应式表单的情况下验证元素,我正在使用如下两种方式进行绑定:

 <input
                    type="text"
                    class="form-control"
                    autocomplete="off"
                    [required]="fieldDeFinition.required"
                    [disabled]="fieldDeFinition.disabled"
                    [(ngModel)]="fieldDeFinition.fieldvalue"
                />

如果需要,如何在单击按钮后用红色突出显示元素?因此,我需要在单击按钮后验证所有字段。

解决方法

用[[ngModel)]将ng-invalid ng-touched类添加到输入中-如果使用ReactiveForms,也是如此

因此,您可以声明一个变量

datagridview1.RowTemplate.Height = 50
datagridview1.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells

然后在按钮上

submitted=false;

您的输入将添加变量变为true时提交的类

<button (click)="submitted=true">submit</button>

您可以定义一个.css之类的

<input [class.submitted]="submitted" ....>

您可以在this stackblitz

中看到一个简单的示例