如何处理百岁老人出生日期?

时间:2009-08-21 15:13:48

标签: user-interface usability

“A centenarian是指年满100岁或以上的人。” - 维基百科

several ways to prompt a user for Date of Birth,但我们已经选择了drop down method

您如何处理最早的可选日期?你选择任意一年(如1875年)并填充到现在吗?

或者,您是否咨询了一些创纪录的年龄(Jeanne Calment, age 122)资源,添加了几年,并向后填充?

5 个答案:

答案 0 :(得分:14)

为什么不输入“1899”或其他类型的文本输入框?收到后,您可以根据您使用的任何条件验证它是合法号码。我对列表框感到恼火,以选择出生年份,因为列表框中不应包含那么多值。


重读问题,您假设列表框是唯一选项。在那种情况下,130年前对我来说似乎是一个足够好的截止点。如果你担心下一个世界纪录断路器会碰巧使用你的系统,那么为什么不用200年前的事情呢?虽然我仍然说你应该只使用一个文本框。

答案 1 :(得分:7)

因为无论使用何种控件,您都必须执行服务器端验证输入,为什么不使用标准文本输入?

`<input type="text" maxlength="4"/>

此:

  1. 消除百岁老人的问题。
  2. 易于使用,特别是对于老年人(假设列表按降序排列)。
  3. 页面尺寸较小(不需要包含100 + <option>....</option>个标签。
  4. 如果必须使用<select>框,我同意您的Wikipedia方法。最早记录的人(126 -> 130或140)的年龄是相当无风险的。

答案 2 :(得分:1)

这取决于我的想法。你在为年轻人创建一个应用程序吗?

如果每个人都需要访问应用程序,只需创建一个可配置的检查并立即更新它。查看最早可能日期的http://en.wikipedia.org/wiki/Oldest_people#Ten_oldest_people_currently_living

最好使用日期选择器,不要使用具有100+值的刺激性列表框。

答案 3 :(得分:1)

如果你想坚持下降,只需选择一个足够长的日期。就我个人而言,我认为对用户和你来说都是糟糕的。我发现从一百个烦人的数字列表中选择我的生日(尽管firefox让我通过输入来选择日期)。但我认为选择使得人们倾向于输入假的年份,而不是必须输入它。

如果你能使用Javascript,那么Combobox可能是两全其美的。您可以在列表中列出100年,并让老年人输入。这只有轻微的道德问题,即你有目的地让老年人输入=)

答案 4 :(得分:1)

我对这样的数据输入的看法是迎合用户,而不是程序员 虽然,是的,下拉导致错误处理最少,但对用户来说也很乏味。

转到需要验证的文本条目。后面需要更多代码[允许2位数和4位数],但对用户来说这是一种更简单的体验