Как этого добиться Я использую Angular 7 и машинопись У меня есть данные поля ввода, подобные этим DK9520000123456789 Поэтому я хочу, чтобы пользователь ограничил ввод первых двух символов только буквами, а не цифрами. ("DK" 9520000123456789) Я не хочу, чтобы пользователь вводил цифры в первых двух символах.
<form class="bank-form-container {{ labelClass }}" [formGroup]="bankForm">
<div class="col-md-6 pl-0">
<label for="bankAcc" class="bank-label"> {{ label }}<i class="validateField">*</i> </label>
<input
[type]="isMaskedBankAcc ? 'password' : 'text'"
(keypress)="numericOnly($event)"
oninput="this.value = this.value.toUpperCase()"
id="bankAcc"
sp-popover
name="bankAccountNumber"
placement="right"
placeholder="{{ placeHolder }}"
class="form-control sp-focus text-uppercase"
formControlName="bankAcc"
appBlockCopyPaste
autocomplete="off"
(blur)="maskAndEncryptBankNumber()"
(focus)="unmaskBankNumber()"
[ngbTooltip]="toolTip"
[pattern]="pattern"
[required]="isRequired"
/>
ngOnInit() {
this.bankForm = new FormGroup({
bankAcc: new FormControl({ value: this.value ? this.value : '', disabled: this.isDisabled }, [
Validators.required,
Validators.pattern(/^\w{2}\d+$/i),
]),
bankConfirmedAcc: new FormControl({ value: this.value ? this.value : '', disabled: true }, [
Validators.required,
Validators.pattern(/^\w{2}\d+$/i),
this.checkMatchingValues.bind(this),
]),
});
this.checkFormValues();
this.unmaskConfirmedBankNumber();
}