Для опытного пользователя ввод текста является лучшим, если пользователь знает формат даты, это очень быстро. Для не так опытный пользователь я предлагаю использовать datepicker. Так как обычно Вы также совершенствовались и неопытные пользователи, я предлагаю комбинацию ввода текста и datepicker.
Я взял бы DatePicker. Это - единственный компонент, который позволяет опытным пользователям вводить его вручную и ведет новичков для ввода очень легкой даты.
календарь не должен открываться, если Вы входите через нажимающую вкладку, но нажатие на кнопку. Таким образом, никакой опытный пользователь не раздражается его.
Я предложил бы использовать выпадающее меню для каждого поля, удостоверившись маркировать каждого как день, месяц и год. Средство выбора даты могло бы также помочь, но если пользователю не включат JavaScript, это не будет работать.
Я предпочел бы datepicker (и поле ввода с зарегистрированным форматом как нейтрализация) для международного сайта.
Форматы даты варьируются и иногда тверды читать, если Вы теперь привыкли к ним. Слишком плохо многие люди не довольны ISO 8601.:-(
Как, возможно, один из пожилых людей здесь, и перенесенный в конце месяца, я нахожу, что выпадающие меню для дат рождения печальны. Я обычно должен прокручивать вниз в двух выпадающих меню, и это является неловким. Я очень ввел бы его.
, Если можно иметь контроль, разработанный так, чтобы он мог или принять выпадающие меню или быть введен в и прояснить обе работы, которые были бы превосходны.
Почему Вы не тестируете все три и выбираете тот что выполнять лучшее? Это походит на хорошего кандидата на Google Website Optimizer для тестирования.
может случиться так, что тип пользователей, которых Вы имеете, или тип сайта, который Вы выполняете, может продиктовать, что Ваше решение должно отличаться, чем "норма".
Помещенный оба и делают каждое обновление другим. Если пользователь выбирает дату из datepicker, легко зафиксировать незначительный misclick в текстовом поле или визуализировать выбор, который Вы ввели в текстовое поле в datepicker.
Я попробовал datePicker своим пользователем, но это оказывается плохим UI им. Что я заканчиваю, основа по их запросу должна иметь 3 текстовых поля, где они могут быстро ввести [день] [месяц] [год]: (
Я также рекомендовал бы комбинацию DatePicker, и поля
Видят эта демонстрация , где средство выбора даты действительно отражает дату, вводимую в поля пользователем.
Это базируется однако на DatePicker с помощью Прототипа и Scriptaculous все же. Я упоминаю его для цели иллюстрации.
Если Ваша цель состоит в том, чтобы удостовериться, что "пользователь не будет смущен вообще", я думаю, что это - наилучший вариант.
я не рекомендовал бы datepicker для дата рождения . Сначала необходимо просмотреть к году (щелчок, нажмите, click…), затем к месяцу (нажимают еще немного), и затем находят и нажимают крошечное количество на сетку.
Datepickers полезны, когда Вы не знаете точную дату первое, что пришло на ум, например, Вы планируете прохождение в течение второй недели февраля.
Я обычно использую обоих - datepicker, который заполняет текстовое поле в правильном формате. Опытные пользователи могут отредактировать текстовое поле непосредственно, счастливые мышью пользователи могут выбрать использование datepicker.
, Если Вы волнуетесь по поводу пространства, у меня обычно есть просто текстовое поле с небольшим значком календаря рядом с ним. При нажатии на значок календаря, он поднимает datepicker как всплывающее окно.
Также я нахожу его хорошей практикой, чтобы предварительно заполнить текстовое поле с текстом, который указывает на правильный формат (т.е.: "DD/MM/YYYY"). Когда пользователь фокусирует текстовое поле, что текст исчезает так, они могут ввести свое собственное.
Кто вам не пользуется jQuery UI DatePicker?
Его можно настроить практически под любые нужды. Единственным недостатком является то, что если вы включаете его с пользовательским интерфейсом jQuery, он занимает довольно много места.
Некоторые размеры файлов, похоже, изменились, поэтому они обновлены ниже. Имейте в виду, что эти числа будут верными только на момент последнего обновления. С тех пор все могло измениться.
Но это не так уж плохо ...
Использовать ли datepicker или нет, я думаю, зависит от того, сколько лет назад даты. Если они обычно находятся в текущем месяце и почти никогда не старше нескольких месяцев, и вы знаете, что Javascript будет рядом, датпикер - это хорошо. Если даты не недавние (скажем, дата рождения), я думаю, что это лучший вариант:
http://img411.imageshack.us/img411/6328/mockupg.png
Обратите внимание, что это отличается от Патрика Ответ Макэлхейни в том, что год - это текстовое поле, а не раскрывающийся список . Выбор числа из раскрывающегося списка, состоящего из сотен элементов, очень раздражает пользователя.
Как упоминалось в этой статье Якоба Нильсена , раскрывающиеся списки должны следует избегать данных, которые хорошо известны пользователю :
Меню данных, хорошо известных пользователям, таких как месяц и год их рождения. Такая информация часто зашита в руки пользователей, и необходимость выбора таких опций из меню нарушает стандартную парадигму ввода информации и даже может создать больше работы для пользователей.
Идеальным решением, вероятно, будет что-то вроде следующего:
РЕДАКТИРОВАТЬ: Вот как мы реализовали наше средство выбора DOB: поле ввода текста замаскировано с регулярным выражением HTML5 для принудительного использования цифровой клавиатуры на устройствах iOS.
Даты рождения отличаются от других дат, потому что люди часто вводят конкретную дату рождения.
Текстовое поле с примером понятно, быстро и легко вводится:
_______
|_______| (example: 31/3/1970)
Оно должно поддерживать гибкое форматирование, такое как 1/1/1970 или 20.07.70.
Если вам нужно поддерживать разные культуры с разными датами (например, США и Великобритания), то это может быть подвержено ошибкам для людей, которые не прислушиваются к примеру. Чтобы избежать этого, вы можете использовать список выбора
для месяца и текстовые поля для даты и года .
_________ __ ____
|March |V| |__| |____|
Это устраняет двусмысленность между порядком по дням и месяцам, но использовать его немного сложнее.