输入出生日期的最佳用户界面是什么?

Ion*_*icu 109 forms usability user-interface

出生日期选择器的最佳方法是什么?

  • 3个文本输入(月/日/年)或一个掩码输入.用户必须使用键盘
  • 3选择框.用户可以使用键盘或鼠标.
  • 一个不错的日期选择器.

我想知道什么是最实用和最无问题的解决方案,因此用户根本不会感到困惑.

Pat*_*ney 160

如果您的目标是确保"用户不会感到困惑",我认为这是最好的选择.

月,日,年三个下拉菜单

我不建议出生日期的日期选择器.首先,您必须浏览到年份(单击,单击,单击...),然后到月份(单击更多),然后找到并单击网格上的小数字.

当你不知道头顶的确切日期时,Datepickers非常有用,例如你计划在2月的第二周旅行.

  • 那么,你出生在10月9日或9月10日?我不知道如何用简单的文本框解决这种歧义. (23认同)
  • Downvoted:下拉对于用户来说非常烦人,特别是对于这种数据.见尼尔森:http://www.useit.com/alertbox/20001112.html (13认同)
  • Upvoted:这正是我要给出的答案.Datepicker适用于'我知道这是一个星期五'的情况,但是对于出生日期它没有增加任何价值. (6认同)
  • @mausch这就是为什么我用"如果你的目标是确保'用户不会感到困惑'"开始我的回答"FTA:"下拉菜单确实有它们的优势......因为它们是标准的小部件(即使是令人不愉快的用户,用户也会在遇到它时知道如何处理下拉菜单." (4认同)

Pat*_*ick 128

虽然这是一个非常古老的问题,但在确定出生日期输入方面是非常重要的,尤其是在登记表格中.

我认为没有人比谷歌帐户注册更好:

Google帐户注册

从选择框中首先选择月份,然后手动键入日期和年份.简单.

易于验证.方便用户正确使用.从1900年到现在,不会在选择框中滚动这些年份.无需根据月份输入更新"日期"选择框.在网络上运行良好.适用于移动设备.适用于所有地区,例如01/10/2014 - 是10月1日还是1月10日?我希望将来我们会更多地看到这种生日选择器格式.

一个日期选择器只是一个糟糕的解决方案.这么多点击!在我看来,只有在知道星期几很重要时才能使用日期选择器,例如预订门票.

2016年2月6日更新:我来自英国,所以我更熟悉日/月/年格式,而不是月/日/年.但是,使用光标选择月份的用户,我相信首先选择框更容易,而不是输入>选择框>输入.评论日期是6月2日,而不是2月6日;)

  • 为什么这不是最佳答案! (8认同)
  • 我要说的一件事就是允许用户输入月份的数值来选择一个值,当选择该下拉列表时.这是大多数用户习惯一个月打字的原因,因此对于键盘用户来说仍然"正常工作". (3认同)
  • 主要是为了避免日月混淆. (3认同)
  • 实际上,我想的越多,我真的没有看到让月份成为下拉列表的好处.为什么不把它作为一个文本字段呢? (2认同)
  • 虽然我们这些美国以外的人通常都有本月前一天. (2认同)
  • 年、月、日对程序员来说是有意义的。如果您的客户都是程序员,这将是一个很好的输入。然而,对于我们这些为非技术性国际受众服务的人来说,这个答案同时解决了许多问题,因为它最不可能被滥用。剩下的唯一问题是那些不知道自己出生日期的人。 (2认同)

asa*_*n74 28

对于高级用户,文本输入是最好的,如果用户知道日期格式,则速度非常快.对于不太高级的用户,我建议使用datepicker.由于通常您还拥有高级和非高级用户,因此我建议将文本输入和日期选择器结合使用.

  • 大多数日期采访者的问题是回到30/40 /或更长时间是痛苦的. (114认同)
  • 进入DOB时,日期选择器实际上是一种糟糕的用户体验,因为需要回到Unkwntech提到的几年.另外,日期时间选择器将特定日期的位置值相对于月和周的结构,这在选择DOB时不需要. (21认同)
  • jQuery的datepicker有一个[显示月份和年份选项下拉菜单的选项](http://jqueryui.com/demos/datepicker/#dropdown-month-year),可以更快地选择生日. (6认同)
  • 虽然现在我看到他提供的那个我猜它不坏. (3认同)

Ale*_*rto 25

正如Jakob Nielsen的文章所述,对于用户熟知的数据,应避免使用下拉列表:

用户熟知的数据菜单,例如他们出生的月份和年份.这些信息通常硬连线到用户的手指中,并且必须从菜单中选择这样的选项打破了用于输入信息的标准范例,甚至可以为用户创建更多的工作.

理想的解决方案可能是什么样如下:

  • 为日,月和年提供3个单独的文本框(适当标记)
  • 根据用户的文化对文本框进行排序.
  • 应调整日期和月份文本框,以便假定输入为2位数.
  • 年份文本框的大小应设为4位数年份.
  • 允许用户输入2或4位数年份.假设2位数年份是1900年,并更新文本框以反映这个onBlur(或在以下确认步骤中).
  • 允许用户输入月份编号或月份名称.

编辑:以下是我们如何实现我们的DOB选择器:带有HTML5正则表达式的蒙面文本输入字段,以强制iOS设备上的数字键盘.

http://www.huntercourse.com/usa/texas/


Ben*_*wee 11

出生日期与其他日期不同,因为人们经常习惯于输入他们特定的出生日期.
一个用一个例子文本框是明确的,快速和容易进入:

 _______
|_______| (example: 31/3/1970)
Run Code Online (Sandbox Code Playgroud)

这应该支持灵活的格式,例如1/1/1970或20/07/70.

如果你必须支持具有不同日期约定的不同文化(例如美国和英国),那么对于那些不注意这个例子的人来说这可能是容易出错的.为避免这种情况,您可以使用
月份选择列表和日期和年份的文本框.

 _________   __   ____
|March  |V| |__| |____|
Run Code Online (Sandbox Code Playgroud)

这消除了日和月订购之间的歧义,但使用起来有点笨拙.


Gio*_*tto 5

你应该看看Datejs.

Datejs是一个开源JavaScript日期库.

全面,简单,隐秘和快速.Datejs已通过所有审判,并准备罢工.Datejs不只是解析字符串,它将它们完全切成两半.

  • 该插件看起来很棒,但对于一个简单的问题,25KB似乎有点多...... (6认同)