R.K*_*R.K 14 forms validation angular
我使用模板驱动的表单来添加任务,并且有两个输入字段的类型编号用于完成任务的估计分钟,
因为任务估计可以在几个小时内完成,例如1小时,或小时和分钟,如1Hrs 30分钟,所以我想有条件地设置输入所需的属性.因此,如果在提交表单时两个输入都为空,则必须设置2个输入中的一个或表单验证错误.
到目前为止,我已经这样做但验证不起作用
<form class="add-task" (ngSubmit)="onSubmit(newtask)" #newtask="ngForm">
<div class="estimate-container">
<input
type="number"
min="0"
max="10"
id="estimate_hrs"
ngModel
name="estimate_hrs"
mdInput
[required]="!estimateMins.valid"
placeholder="Estimated Hours"
#estimateHrs="ngModel"
>
<div class="error-msg" *ngIf="!estimateHrs.valid && !estimateMins.valid">
Please enter estimated hours
</div>
<input
type="number"
min="0"
max="60"
id="estimate_min"
ngModel
name="estimate_min"
mdInput
[required]="!estimateHrs.valid"
placeholder="Estimated Minutes"
#estimateMins="ngModel"
>
<div class="error-msg" *ngIf="!estimateMins.valid && !estimateHrs.valid">
Please enter estimated minutes
</div>
</div>
<button type='submit' [disabled]="!newtask.valid" >Submit</button>
</form>
Run Code Online (Sandbox Code Playgroud)
Deb*_*ahK 11
请尝试使用[attr.required].
<input
type="number"
min="0"
max="10"
id="estimate_hrs"
ngModel
name="estimate_hrs"
mdInput
[attr.required]="!estimateMins.valid"
placeholder="Estimated Hours"
#estimateHrs="ngModel"
>
Run Code Online (Sandbox Code Playgroud)
这是我对Angular 5的工作解决方案:
在组件中:
@Input()
required: boolean;
Run Code Online (Sandbox Code Playgroud)
在输入(或选择)元素的模板中:
[required]="required"
Run Code Online (Sandbox Code Playgroud)
在选择器上:
[required]="true"
Run Code Online (Sandbox Code Playgroud)
喜欢@DeborahK双重检查,不需要单引号:-)
| 归档时间: |
|
| 查看次数: |
14520 次 |
| 最近记录: |