角度4模板驱动形式 - 从触摸的一个字段第二个标记

时间:2017-10-18 19:37:29

标签: angular angular4-forms ngmodel angular-ngmodelchange

我有两个字段 f.e。

<form #f="ngForm" novalidate (ngSubmit)="save(f.value, f.valid)">
<div>
    <label>Name</label>
    <input type="text" name="name" [(ngModel)]="user.name" #name="ngModel" required minlength="5">
    <label>Street</label>
    <input type="text" name="street" [(ngModel)]="user.surname" #surname="ngModel" required>
</div>
<button type="submit">Submit</button></form>

我想将第二个字段中的一个字段标记为触摸,这是可能的吗? 我试图使用(ngModelChange)=&#34; surname.control.markAsTouched(true)&#34;在姓名上将姓氏标记为已触及,但它无效

1 个答案:

答案 0 :(得分:3)

当您更改第一个输入值时,

(blur)将起作用,您可以使用<input type="text" name="name" [(ngModel)]="user.name" #name="ngModel" (ngModelChange)="surname.control.markAsTouched()" required minlength="5"> <input type="text" name="street" [(ngModel)]="user.surname" #surname="ngModel" required> {{surname.touched | json}} <button type="submit">Submit</button> 标记第一个输入值时触摸的第二个输入值。

@{
    ViewData["Title"] = "Watching " + Model.EventName;
    int eventId = Model.Id;
}

Demo Plunker