document.addEventListener('DOMContentLoaded', function () {
// Найдём все поля с классом .t-input-phonemask
const phoneFields = document.querySelectorAll('.t-input-phonemask');
// Применим обработку для каждого найденного поля
phoneFields.forEach(phoneField => {
phoneField.addEventListener('input', function () {
// Удаляем все символы, кроме цифр
let value = this.value.replace(/[^\d]/g, '');
// Если номер начинается с 0, удаляем его
if (value.startsWith('0')) {
value = value.substring(1);
}
// Ограничиваем длину номера до 9 цифр
if (value.length > 9) {
value = value.slice(0, 9);
}
// Форматируем номер в формат +380 (XX) XXX-XX-XX
this.value = `+380 (${value.slice(0, 2)}) ${value.slice(2, 5)}-${value.slice(5, 7)}-${value.slice(7, 9)}`;
});
// Обработаем вставку из буфера обмена
phoneField.addEventListener('paste', function (e) {
e.preventDefault();
let pastedText = (e.clipboardData || window.clipboardData).getData('text');
let value = pastedText.replace(/[^\d]/g, '');
if (value.startsWith('0')) {
value = value.substring(1);
}
if (value.length > 9) {
value = value.slice(0, 9);
}
this.value = `+380 (${value.slice(0, 2)}) ${value.slice(2, 5)}-${value.slice(5, 7)}-${value.slice(7, 9)}`;
});
});
});