I am getting the following error in Angular 4 :
ERROR TypeError: Cannot read property 'invalid' of undefined
Here's the code :
<form name="form" #f="ngForm" novalidate>
<tr>
<td width="10%" class="text-blue"></td>
<td><input type="text" name="bankname" maxlength="25" appRestrictinput ="words" [(ngModel)]="model.bk_name" #bk_name="ngModel" class="form-control" autofocus /> </td>
</tr>
<div *ngIf="bankname.invalid && (bankname.dirty || bankname.touched)" class="alert alert-danger">
<div *ngIf="bankname.errors.required">Name is required</div>
</div>
</form>
Please let me know where I'm going wrong. Thanks in advance.
Your control reference in the view is bk_name
. Replace bankname
with bk_name
.
<div *ngIf="bk_name.invalid && (bk_name.dirty || bk_name.touched)" class="alert alert-danger">
<div *ngIf="bk_name.errors.required">Name is required.</div>
You Just forgot about Template variable
Add this to your input #bankname="ngModel" and it will work with you
<input ngModel name="bankname" type="text" #bankname="ngModel" class="form-control" placeholder="Name" required> <br/>
<div class="alert alert-danger" *ngIf="bankname.invalid">bankname is required</div>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With