Как форматировать номер в поле ввода intlTelInput?

Есть такой плагин: https://github.com/jackocnr/intl-tel-input
И он вроде бы устраивал сначала, но потребовалось чтобы:
1) При вводе номера нельзя было ввести символы отличные от минуса, плюса, скобок, пробела и цифр. Оказалось что нет в новой версии ограничений на ввод символов (
2) Необходимо чтобы номер разбивался автоматически пробелами и минусами при вводе так: +7 918 506-62-67
Тоже не может - автор выпилил автоформат в текущей версии.

Пока повесил на keyup такой вот код:
var number = $o.intlTelInput('getNumber',0);
$o.intlTelInput('setNumber',number.replace(/[^- +0-9]/gim,''));

$o - это jquery объект с которым работаем.

НО:
Это не решает проблему форматирования при вводе.
Методы ведут себя странно - getNumber например возвращает в разных случаях или введенные польователям символы или номер очищенный от всего кроме цифр.
isValidNumber - всегда возвращает false, даже если номер валиден, только код ошибки становится при этом 0.
Но код ошибки всегда 0 когда каким-нибудь способом удалось преобразовать введенное пользователем в номер (((
  • Вопрос задан
  • 634 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы