【发布时间】:2021-04-28 13:25:51
【问题描述】:
我需要将输入字段的长度限制为10,并且不允许字段中包含更多字符,而不抛出验证消息。它应该简单地停止使用更多字符,你能帮我吗
我不想使用maxlength = 10
html:
<div class="col col-4">
{{ EditAddressContext.streetNumber }}:
<p>
<input type="text" name="streetNumber" formControlName="streetNumber" [ngClass]="{'is-invalid': submitted && streetNumberError}" />
<small class="form-text text-danger" *ngIf="submitted && streetNumberError">
<small class="form-text text-danger" *ngIf="streetNumberError">
<small *ngFor="let error of streetNumberErrorArray">{{error}}<br></small>
</small>
</small>
</p>
</div>
.ts 文件:
formGeneration() {
this.interceptEditAddressFormGroup = this._formBuilder.group({
streetNumber: ['', [Validators.maxLength(11)]],
streetPrefix: [],
streetName: ['',],
streetSuffix: [],
streetType: [],
roomSuite: []
});
}
【问题讨论】:
-
如果你希望输入被阻塞,最好的解决方案是 HTML 的 maxlength 属性。没有错误消息,因为不可能写更多的字符...另一个解决方案是通过 JS 阻止用户输入,但丑陋且防错性较差...
标签: angular angular-reactive-forms