2

我想知道一小部分数字 [1..20],您建议使用哪种控件来提示用户进行选择。

我正在考虑一个 NumericUpDown 控件,但它对于 WebForm 不存在,更糟糕的是,我正在部署在 Pylons 应用程序(Python 框架)上

你觉得一个 DropDown 控件就足够了吗?从用户的角度来看,我仍然觉得 NumericUpDown 控件更加直观且易于使用。

会喜欢 SO 社区的意见,也许会就最佳实践提出建议。

非常感谢!

编辑:忘了提到我正在使用 YUI 库和 webhelpers 库,据我所知,没有与 numericupdown 具有等效功能的此类控件

4

4 回答 4

5

如果用户主要与键盘交互,请考虑仅使用常规编辑框来测试限制。这比敲击向下箭头选择其他数字要容易得多。

如果它是基于鼠标的并且您有空间,那么按钮网格或单选集会很快。

如果它是基于键盘的,那么 Jakob Nielsen 在他的 Alertbox 文章Drop-Down Menus: Use Sparingly 中写道,这个注意事项:

要避免的设计

下拉菜单确实有其优势。首先,它们节省了屏幕空间。它们还可以防止用户输入错误的数据,因为它们只显示合法的选择。最后,因为它们是一个标准的小部件(即使是一个令人不快的小部件),用户知道在遇到下拉菜单时如何处理它。

尽管有这些优势,但如果设计师不经常使用下拉菜单,Web 可用性将会提高。为此,以下是一些要避免的设计示例:

  • 州缩写菜单,例如美国邮寄地址。用户只需键入“NY”比从滚动下拉菜单中选择状态要快得多。具有受限选项的字段的自由格式输入确实需要在后端进行数据验证,但从可用性的角度来看,这通常是最好的方法。(这是电子商务可用性的指南 #178,因为我们在带有状态下拉列表的结帐表单中观察到了许多错误。)

  • 用户熟知的数据菜单,例如他们的出生月份和年份。此类信息通常硬连线到用户的手指中,并且必须从菜单中选择此类选项破坏了输入信息的标准范例,甚至可以为用户创造更多的工作,如下面的示例所示。

于 2009-08-06T20:09:00.237 回答
0

下拉很好,数字范围较小,允许快速访问范围两端的数字。请记住,尽管用户可以使用 firebug 或其他方式更改下拉列表的选定值,但请使用验证来确保提供的数字在范围内。

于 2009-08-06T19:52:12.523 回答
0

如果您更喜欢 NumericUpDown 样式,您可以使用 javascript 轻松制作一个简单的版本。我已经用 jQuery 完成了它,所以我不能真正给你关于用 YUI 做的细节,但总的来说,这就是我已经实现的。创建一个标准文本框,其中预设了默认值,并将其设置为只读。添加向上和向下按钮并根据需要设置它们的样式(我使用了 div,在框的左侧向下,在右侧向上)。为每个按钮集添加单击事件以增加或减少文本框的值。在您的脚本中,限制值的范围,但还要验证输入以确保它没有按照之前的建议进行更改。我承认我不是这方面的专家,所以可能有更简单的方法来做到这一点。

于 2009-10-07T19:37:15.267 回答
0

谢谢各位热心回复。

通过一些可用性测试,我认为

  1. NumericUpDown 控件又名 NumberSpinner 最适合在小范围内选择数字,例如 1-100

  2. 经过验证的文本框适用于大量输入

  3. 由于下拉菜单的长度,下拉菜单可能仅适用于较小的数字范围,例如 1-10(上网本用户?手机用户)

  4. 单选按钮网格不如下拉菜单好,因为用户必须扫描整个屏幕长度才能选择他的号码

向 damien 致敬关于验证的提示,以防止使用萤火虫更改数字。

于 2009-08-13T16:10:24.997 回答