I am entering the valid phone number in lwc input field and when tries to backspace, it's not removing the space between brace and number. I have to hold the backspace button to remove the backspace.
Format of phone number: (123) 131-5135
handleInputPhone(event) {
this.showError = false;
this.errorPhone = '';
const enteredValue = event.target.value;
const digitsOnly = enteredValue.replace(/[^\d]/g, ''); // Remove non-digits
//console.log('TEST'+ digitsOnly);
if (event.keyCode === 8) { // Backspace key
digitsOnly = digitsOnly.slice(0, -1); // Remove the last digit
} else if (event.keyCode === 46) { // Delete key
digitsOnly = digitsOnly.slice(1); // Remove the first digit
}
if (digitsOnly === '') {
this.conPhoneNumber = ''; // Reset to empty string or default value
} else {
let formattedValue = '(___) ___-____';
let digitIndex = 0;
for (let i = 0; i < formattedValue.length; i++) {
if (formattedValue[i] === '_') {
if (digitIndex < digitsOnly.length) {
formattedValue = formattedValue.substring(0, i) + digitsOnly[digitIndex] + formattedValue.substring(i + 1);
digitIndex++;
} else {
formattedValue = formattedValue.substring(0, i);
break; // Stop replacing digits once we run out of entered digits
}
}
}
