Почему я не должен просить своих пользователей вводить время, используя военный формат - PullRequest
5 голосов
/ 21 декабря 2009

У меня есть форма, которая просит пользователей ввести время начала и окончания события. В течение многих лет мы позволяли им вводить время, выбирая часы (1-12), минуты (1-60) и AM / PM из трех выпадающих списков. Это работало нормально без жалоб от клиентов. Однако сегодня я получил запрос на изменение ввода в одно текстовое поле, чтобы пользователь мог ввести время в военное время (он же 0000 - 2359). В моей интуиции я считаю, что это плохая идея, но мне трудно придумать какие-либо неопровержимые факты.

Каковы наилучшие причины, по которым я могу привести это к плохой идее?

Если есть лучшее решение для ввода времени, что бы это было?

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

Обновление: все мои пользователи являются локальными, и никакие другие формы (веб или печатные) не используют военное время в качестве стандарта.

Ответы [ 16 ]

1 голос
/ 21 декабря 2009

В своих собственных кадрах я принимаю время и даты в самых разных форматах. Когда поле теряет фокус, я попытаюсь проанализировать ввод и отформатировать его в «правильный» или «официальный» формат. Это дает пользователю хороший способ ввода данных и визуальную подсказку, когда что-то не так.

Например, в поле даты я приму «1» как «01.12.2009» (текущий месяц + год). Во временном интервале я приму «1030», «10 30», «10.30» (т.е. я просто отфильтрую все, что не является числом). «010409 1125» становится 1. апреля 2009 года, 11:25 утра.

1 голос
/ 21 декабря 2009

Я понимаю, почему вы думаете, что это плохая идея, глупые пользователи вводят неправильный формат и т. Д.

Однако рассматривали ли вы jQuery Маскированное поле ввода ?

0 голосов
/ 21 декабря 2009

В любом случае, предполагая, что все данные вводятся зарегистрированными пользователями, вы можете предоставить несколько механизмов (и, конечно, несколько способов, если отображает время) и сделать выбор предпочтением пользователя. Но я настоятельно рекомендую, чтобы что бы вы ни делали, для любого заданного времени пользователя следует вводить и отображать в согласованном порядке.

0 голосов
/ 21 декабря 2009

Почему бы не использовать какой-либо элемент управления TimePicker?

Не следует заставлять невоенных пользователей использовать странный для них формат времени.

0 голосов
/ 21 декабря 2009

ввод даты / времени через поля выбора - ужасный дизайн пользовательского интерфейса.

но, если некоторые из ваших пользователей приехали из нескольких стран, которые придерживаются формата AM / PM для формата времени, то навязывание им «военного» формата без помощи программы также плохо. используйте что-то вроде jQuery-плагина ввода .

если бы я делал это, я бы использовал ввод маскированного текста и флажок «PM»: если значение больше 1259, флажок отключен. в противном случае по умолчанию все ясно.

0 голосов
/ 21 декабря 2009

Возможно, вы захотите использовать jQuery timepicker (или Telerik DateTimePicker в режиме Time-only для WinForms), а также встроенную поддержку на бэкэнде для нескольких форматов в событие, когда JavaScript отключен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...