3

一位用户最近询问(好的,抱怨)为什么我们网站上的 19 位帐号被分成 4 个长度为 的单独文本框[5,5,5,4]。作为最初的设计师,我无法回答这个问题,但我一直认为这样做是为了保持数据质量并可能提供更好的用户体验。

其他更通用的示例包括带区号的电话(10 位连续数字与 [3,3,4]),当然还有 SSN(9 位与 [3,2,4])

这让我想知道是否有关于该主题的任何已知标准?你什么时候分开你的ID#?特别是关于用户体验和最大限度地减少数据输入错误。

4

3 回答 3

4

我知道对此进行了一些研究,目前我能找到的最多的是关于短期记忆的维基百科文章,特别是分块。还有神奇的数字七,加号或减号二

当我向最终用户提供 ID 时,我个人喜欢将其分成 5 个块,这似乎与您系统的原始设计者使用的约定相同。除了“感觉正确”之外,我没有任何合乎逻辑的理由可以让你选择这个号码。如果不能花很多钱进行研究,“直觉”和跟随其他系统的争论可能是要走的路。

也就是说,如果您可以通过以下方式使 UI 对用户更有用:

  • 完成后自动从一个字段的末尾移动到另一个字段的开头
  • 自动从一个字段的开头移动到前一个字段,并在用户在非第一个空字段中按删除时删除最后一个字符

或者

  • 用一个长字段替换它,上面有某种形式的“输入掩码”(不确定这在纯 HTML 中是否可行,但使用其中一个 UI 框架可能是可行的)所以它看起来像"_____ - _____ - _____ - ____"并且最终看起来像"1235 - 54321 - 12345 - 1234"

这几乎肯定会让他们更快乐!

于 2010-08-23T21:21:10.590 回答
2

不了解标准,但从个人角度来看:

  • 如果有多个字段,请确保一旦字段已满,光标就会移动到下一个字段。
  • 如果只有一个字段,请允许在该字段中使用空格/破折号/任何内容,因为您可以将它们过滤掉。例如,当站点/程序强制您以“dd/mm/yyyy”格式输入日期时,这真的很烦人,这意味着必须用零填充日/月。“23/8/2010”应该是可以接受的。
于 2010-08-23T21:21:36.713 回答
1

您需要考虑特定应用程序的更广泛的上下文。任何设计决策总是有利有弊,但它们的影响会因情况而异,因此您必须每次都考虑。

将长数字分成几个字段可以更容易阅读,尤其是如果您选择以与大多数用户相同的方式划分数字。您通常还可以在用户转到下一个字段时立即验证输入,因此您可以更早地指出错误。

另一方面,现在用户很少输入像这样的长数字:大多数时候他们只是从他们选择的任何笔记保存解决方案中复制粘贴它们,以他们那里的任何格式。这意味着单个字段,对长度或允许的字符没有任何限制,突然变得很有意义——你可以过滤掉字符(只要确保在某个时候向用户显示数字的最终形式)。在字段之间移动焦点也存在问题,浏览器会记住以前的值(您只需要选择一个数字,而不是相同数字的 4 个部分)等等。

总的来说,我会说随着浏览器慢慢变得越来越可用,您应该通过使用库存解决方案来利用它们提供的机制,而不是自己发明复杂的解决方案。你今天可能比他们先一步,但两年后浏览器会赶上来,你的网站会很糟糕。

于 2010-08-23T21:28:39.677 回答