【发布时间】:2018-09-20 22:21:05
【问题描述】:
我想在 bootstrap 4 中使用表单控制反馈样式,但我无法获得所需的显示。 这个想法是在输入字段内显示一个图标和一条错误消息。
我正在使用Angular 5.2.9、bootstrap 4 和fontawesome 图标。
html
<form [formGroup]="form" (ngSubmit)="onSubmit()">
<div class="form-group"
[ngClass]="{'has-error has-feedback' : form.get('Title').errors?.required }">
<label for="title">Quiz title:</label>
<br />
<input type="text" id="title"
formControlName="Title"
placeholder="choose a title..."
class="form-control" />
<span *ngIf="form.get('Title').errors?.required"
class="fa fa-eraser form-control invalid-feedback"
aria-hidden="true">
</span>
<div *ngIf="(form.get('Title').dirty
|| form.get('Title').touched)
&& form.get('Title').errors?.required"
class="text-danger">
<small>
Title is required field: please insert a valid title
</small>
</div>
</div>
结果
如果我将text-danger 更改为invalid-feedback,则由于css 属性display: none; 而根本不会显示带有消息的div
编辑
这个解决方案Bootstrap 4.0 (non-beta) .invalid-feedback doesn't show 使用d-block 作为 div 可以解决错误消息。仍然需要弄清楚如何将 fontawesome 图标放在输入中。
【问题讨论】:
标签: angular css bootstrap-4 font-awesome form-control