代码之家  ›  专栏  ›  技术社区  ›  Glenn

预期行为:对分页表的列进行排序

  •  2
  • Glenn  · 技术社区  · 16 年前

    当用户查看分页表并请求按特定列对其进行排序时,将显示哪一页?

    此场景是否有标准的预期行为?我可以想象几个可能的结果,但我想知道是否有一个标准。

    3 回复  |  直到 16 年前
        1
  •  4
  •   Michael Zuschlag    16 年前

    N 桌子上有几页?没有好的选项任何可能都会让用户迷失方向和沮丧,因为没有标准,也没有特别好的理由选择一个选项而不是另一个。如果你要测试用户,我怀疑他们是否有一致的期望。即使是同一个用户在不同的时间也可能期望不同的东西。分页表还提供了关于表中当前位置的相对较弱的反馈,因此用户很难在对您使用的任何选项进行排序后了解它们的位置。可用排序是分页表不如滚动表的一个原因。

    其中包括:

    • 如果您有办法在表中显示当前选定或关注的项目(行),那么您可以转到该项目所在的任何页面,前提是用户当时选择进行排序,以便查看其他项目,如他们正在查看的项目。这与滚动表的某些实现是一致的。但是,大多数web应用页面表不支持选择项目。

    • 你可以展示 几乎 正确排序(例如,在发送日期,需要接收日期时)。展示 第页将用户放在与以前大致相同的页面上。然而,这并不是最常见的用例,用户可能会觉得他们被扔到了一个任意的页面,因为位置反馈很弱。这个选项可能会产生最大的迷失方向感。

    • 您可以在新排序顺序下显示第一页。根据您的任务,可能在大多数情况下,当用户对表进行排序时,用户对其排序的属性值最高或最低的项感兴趣。通过显示第一页,您正确的概率可以接近50%。这是最不会让人迷失方向的,因为用户一开始就感觉自己回到了精神锚定点。另一方面,如果用户觉得他们正在重新开始,他们可能会感到沮丧。总的来说,这可能是你最好的选择。

    另一方面,考虑支持 而不是为了达到同样的目的而进行排序。根据您的用户任务,这可能会更好地工作,并减少混乱和费力。

        2
  •  2
  •   alexmeia    16 年前

    Michael Zuschlag的答案很好,但我认为他提出的案例1和案例2确实很少见,这样做可能会让人困惑而不是有用。

    在我看来,你应该 始终在新排序顺序下显示第一页 . 如果用户选择了一个项目,通常他不想对任何内容进行排序,因为他已经找到了他要查找的内容。

    如果要为列表提供排序顺序,通常需要查看真正完整的顺序。

    经典场景可以是torrent站点:

    1. 我搜索激流,键入一些

    2. 搜索之后,我有一个 一份无序的清单,每人50件 页

    3. 我转到第二页。

    4. 现在,我认为最好从种子数最多的项目开始对结果进行排序,然后单击种子列的标题。

    我希望在操作4后看到种子数最多的项目,所以在排序后,您必须向我显示第一页。我认为这对于任何排序情况都是正确的。

        3
  •  1
  •   DVK    16 年前

    其次,对于用户熟悉和可能期望的真实例子,Yahoo Mail做到了第3页(排序后跳转到第1页)。许多其他网站也是如此。

    我个人的建议(如果可行的话)是上面的#1(允许跳转到包含当前所选元素的页面)。确保元素仍处于选中状态。

    这在某种程度上是直观的,并非出乎意料的,而且在用户关心发生了什么的情况下最有用。另外,选项#3(跳转到第一页)对于用户来说只需点击一次,假设您的分页控件包括“转到第1页”,而正如前面的回答中所述,对于确实想保留当前项目的用户来说,执行第一页操作会变得困难和漫长。

    如果可行,我也绝对支持“添加过滤”的想法-我发现自己使用Excel for>50%的表格/列表工作源于任何应用程序/网站,这是由于其过滤和排序的特殊组合。假设你的UI是HTML,也许YUI有一个不错的可过滤表元素?