javascript - 列表框中的最大条目数

标签 javascript user-controls user-interface user-input

简单列表框(组合框)应包含的最大条目数是多少?美国有 50 个州——50 个州太多了吗?世界上有 270 多个国家和地区 - 270 个太多了吗?

列表框何时应包含搜索或预输入功能?设计者什么时候应该考虑 ListBox 之外的其他东西?

您是否有任何指向很酷的小部件的链接,可以帮助用户从众多选项中进行选择?

提前谢谢您。

最佳答案

如果用户知道她或他想要从预先输入的排序良好的列表中获得精确的值,那么超过 1000 个项目就可以了。严重地。亲自尝试一下:搜索您的硬盘驱动器,生成 1000 个左右的文件,看看滚动或提前输入您知道的文件有多困难。

比原始项目数更重要的是列表中的项目与可滚动 Pane 中可见的项目的比率,无论您是在谈论列表框还是组合框的下拉部分。您希望一次至少有 5% 的项目可见。因此,对于 1000 个项目,您需要一个大约 800 像素高的 Pane (每行 16 像素)。考虑到典型的低端桌面显示器尺寸,这将大约 1000 设置为限制。如果您谈论的是使用笔记本电脑使用网站的用户,那么您只有大约 560 像素(允许浏览器控件等),所以现在您正在查看 700 个项目。还是很多。我们假设有一个适当的可滚动列表,其中列表通过拖动 slider 立即滚动。

当项目数量更像是 1000 比 100 时,我只看到需要过滤/搜索控件(而不是单独提前输入),尽管您需要对特殊情况进行异常(exception)处理(例如,当用户实际上并不这样做时)知道他/她到底想要什么,需要根据不同的标准探索替代方案,或者当有大量项目都以相同的 9 个字母开头时)。

始终提前输入。没有理由不这样做,即使项目数量很少,它也有利于仅使用键盘而不是鼠标(对于数据输入很常见)的用户。将其视为标准。您不希望用户必须猜测您是否选择对给定字段进行预先输入(“他认为 10 项就足够了吗?他有过吗?”),所以只要一直保留即可。

关于javascript - 列表框中的最大条目数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1916617/

相关文章:

java - 如何在不使用数组的情况下更改showConfirmDialog中的文本?

python - 参数 'event' 值未使用

javascript - jQuery 鼠标移出调用 CSS3 动画

javascript - 为什么重启后会出现语法错误?

javascript - 如何根据 div 内容切换 div 的可见性

c# - 从 Usercontrol.ascx javascript 调用 Usercontrol.cs 中的 Webmethod

c# - 如何将子用户控件中的按钮链接到父级。 C#/WPF

javascript - 获取意图、实体、上下文和所有数据

c# - ASP.NET 动态添加 UserControl 到 PlaceHolder,不触发 Click 事件,只触发 Page_Load

Java GUI 布局建议