Перейти к содержимому


Подключение маски для номера телефона

номер телефона маска для поля

Сообщений в теме: 4

#1 Feerichno

    Участник

  • Пользователи
  • PipPip
  • 14 сообщений
  • Пол:Мужчина
  • Город:Москва

Отправлено 04 Август 2015 - 11:02

Добрый день.

Прочитал несколько тем, где пользователи спрашивают как задать маску для номера телефона. Может имеет смысл в следующем обновлении добавить скрипт maskedinput http://digitalbush.c...d-input-plugin/ или autoNumeric http://habrahabr.ru/post/149010/?

Как в моем случае подключить скрипт и добавить полю телефона "data-mask="phone""?

Код очень прост:
1) Подключаем сам скрипт <script type="text/javascript" src="/js/jquery.maskedinput.js"></script> (где его подключить?)
2) Указываем маску, которая будет действовать для поля с "data-mask="phone"":
<script type="text/javascript">
jQuery(function($) {
$('[data-mask=phone]').mask("+7 (999) 999-99-99")})
</script>
3) Полям с номерами телефонов нужно присвоить "data-mask="phone""

Результат, думаю, что устроит всех. Можно немного доработать и будет возможность вводить номера телефонов с кодом города отличным от трех цифр.
Пример на нашем сайте: http://www.kimekomi.ru/contacts/
Рекламное агентство «Феерично»
Тел.: +7 (495) 227-55-75
www.feerichno.ru

#2 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 759 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 04 Август 2015 - 11:23

Цитата

Как в моем случае подключить скрипт

http://clientbase.ru...indpost&p=20105

Цитата

и добавить полю телефона "data-mask="phone""

В данном случае проще видоизменить скрипт и добавлять маску не к полю с "data-mask="phone", а к конкретному полю по его id, в настройках JS этого поля.

#3 Feerichno

    Участник

  • Пользователи
  • PipPip
  • 14 сообщений
  • Пол:Мужчина
  • Город:Москва

Отправлено 04 Август 2015 - 12:51

Не совсем понял про добавление маски к конкретному полю...

Сначала я добавляю такую строку в файле functions_custom.php:
$ADDITIONAL_JAVASCRIPT_INCLUDE = '<script type="text/javascript" src="/js/jquery.maskedinput.js"></script>';
Но уже код:
<script type="text/javascript">
jQuery(function($) {
$('[data-mask=phone]').mask("+7 (999) 999-99-99")})
</script>
пишу в js самого поля? только вместо data-mask=phone прописываю id="номер id данного поля"?
Рекламное агентство «Феерично»
Тел.: +7 (495) 227-55-75
www.feerichno.ru

#4 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 759 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 04 Август 2015 - 13:22

Да, только я не про "номер id данного поля", а про id элемента поля ввода на странице. Для формы редактирования записи он имеет вид "value111", где 111 - уже id поля в КБ. Т.е. в применение к вашему коду получаем $('#value111').mask("+7 (999) 999-99-99")

#5 Feerichno

    Участник

  • Пользователи
  • PipPip
  • 14 сообщений
  • Пол:Мужчина
  • Город:Москва

Отправлено 04 Август 2015 - 13:37

Спасибо! Все работает!

Если вдруг кому нужно, описываю по шагам:

1) Создаете файл functions_custom.php в папке include
2) В нем добавляете (не забудьте про экранирование ""):
<?php
$ADDITIONAL_JAVASCRIPT_INCLUDE = "<script type=\"text/javascript\" src=\"include/jquery/jquery.maskedinput.min.js\"></script>";
?>
3) Скачиваете скрипт и заливаете его в папку include/jquery (http://digitalbush.c...d-input-plugin/)
4) В настройках поля с номером телефона в окне JS пишем:

jQuery(function($) {
$('#value441').mask("+7 (999) 999-99-99")}) (*#value441 меняете на значение вашего поля)

Вуаля!

Кстати, неплохо бы интегрировать такую функцию вместо того, чтобы писать шаблон для поля.
Московские номера телефонов и все мобильные имеют 3 цифры в коде, а для других городов можно сделать второе поле для местного номера телефона.

Сообщение отредактировал Feerichno: 04 Август 2015 - 13:45

Рекламное агентство «Феерично»
Тел.: +7 (495) 227-55-75
www.feerichno.ru





Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных