我有一个文本框如下:
<div form="form-group">
<label for="Title"> <h3>Title:</h3> </label>
<div [ngClass]="{
'has-errors': (dataProcessingEditForm.controls.Title.errors && dataProcessingEditForm.controls.Title.dirty ),
'has-success': (!dataProcessingEditForm.controls.Title.errors )
}">
<input type="text" name ="Title" class="form-control" autocomplete="off" placeholder="*Title"
value="{{theDP.title}}" formControlName="Title">
<!--Validations-->
<ul class="help-block">
<li *ngIf="(dataProcessingEditForm.controls.Title.errors?.required && dataProcessingEditForm.controls.Title.dirty)
">
This field is required</li>
</ul>
</div>
</div>
文本框由我在ngOnInit()函数中从DB读取的数据填充。显然,验证者没有认识到它有价值,所以它要求我填写它。我应该如何修改validoator以实现该值?我使用了以下内容:
'has-success': (!dataProcessingEditForm.controls.Title.errors || dataProcessingEditForm.controls.Title.hasValue )
但似乎没有用。预先感谢您的帮助。
只需用ngModel替换值
<div form="form-group">
<label for="Title"> <h3>Title:</h3> </label>
<div [ngClass]="{
'has-errors': (dataProcessingEditForm.controls.Title.errors && dataProcessingEditForm.controls.Title.dirty ),
'has-success': (!dataProcessingEditForm.controls.Title.errors )
}">
<input type="text" name ="Title" class="form-control" autocomplete="off" placeholder="*Title"
ngModel="theDP.title" formControlName="Title">
<!--Validations-->
<ul class="help-block">
<li *ngIf="(dataProcessingEditForm.controls.Title.errors?.required && dataProcessingEditForm.controls.Title.dirty)
">
This field is required</li>
</ul>
</div>
</div>