Илья Харитонов
26 октября 2011

Здравствуйте, уважаемые советчики!

Есть форма, и есть поле ввода, куда пользователь вводит контактный телефон. Вроде бы можно засандалить туда маску типа 8 (___) ___-__-__. Но сложность в том, что телефон может быть как мобильный, который обычно записывается в формате 8 950 123-45-67 либо со скобками 8 (950) 123-45-67, так и городской, который обычно выглядит как (3462) 23-45-67.

Восьмёрку в начале можно было бы и оставить как для мобильного, так и для городского, но вот количество знаков в скобках разное. Как быть? Как сделать универсальную форму? Или стоит прикрутить переключалку городской/мобильный? Или оставить обычную форму без пояснений и написать скрипт, которы сам будет разбирать номера по типам и на выходе выдавть удобоваримый вид? Но ведь люди, не увидев подсказку в каком формате писать телефон, могут впасть в нерешительность, из боязни ввести неправильно.



Я обычно делаю так:

Телефон          

Пользователь пишет номер как хочет, но +7 даёт ему понять, что номер нужен целиком. Как именно он расставляет дефисы, пробелы и скобки значения не имеет.

Но если вам важно дать вводить номер в нескольких форматах, то лучше всего будет написать скрипт, который будет его разбирать. А чтобы пользователь не впадал в нерешительность, стоит просто привести пару примеров:

Телефон          
Номер с кодом города, напр. +7 495 646-84-89 или (495) 6468489

P. S.

Я проведу практический курс «Пользовательский интерфейс и представление информации» 22, 23, 24 и 26 апреля в Москве

 

Запись открыта до ВС 16 апр


Поделиться

Комментарии

Даниил Фойгель
26 октября 2011

А почему нельзя предоставить пользователю возможность вводить номер телефона произвольно? Всё равно звонить по нему будет человек, а уж он-то разберётся.

Юрий Хан
26 октября 2011

Поля ввода с маской — это кошмар юзабилити. Хотя бы потому, что в них не всегда работает копипейст.

Все телефоны всегда должны быть в полном международном формате (для России — с +7). Хотя бы потому, что выход на межгород планируют скоро убрать с восьмёрки.

Если человек написал какой-то местный номер, сайт должен попытаться угадать код страны и города, например, по местоположению пользователя, поменять 646-84-89 на +7-495-646-8489, обратить его внимание на это и дать возможность исправить.

И, конечно, вся эта автоматика должна срабатывать при попытке отправки формы, а не на каждое нажатие.

Алексей Рытов
17 ноября 2011

Я вывел для себя универсальное правило (работает не только для телефонов) — дайте пользователю подсказку (хинт) как вводить, но позволяйте вводить и в других форматах, разбирая их автоматически. Хинт помогает пытливым пользователям не уподобляться Буриданову ослу.


Цель рубрики — обсуждение вопросов дизайна всех видов, текста в дизайне и взаимоотношений дизайнеров с клиентами.

Мы публикуем комментарии, которые добавляют к уже сказанному новые мысли и хорошие примеры. Мы ожидаем, что такие комментарии составят около 20% от общего числа.

Решение о публикации принимается один раз; мы не имеем возможности комментировать или пересматривать свое решение, хотя оно может быть ошибочно. Уже опубликованные комментарии могут быть удалены через некоторое время, если без них обсуждение не становится менее ценным или интересным.

Вот такой веб 2.0.

Недавно всплыло

У меня остаётся ощущение, что я идиот, «рассыпала бобы», но на конкретных ошибках не могу себя поймать 3 1 Как создавался новый сайт бюро. Часть вторая 2 Расскажите об обратной связи в интерфейсе 1