E3.17.3empty filter results explained设计

过滤结果为空时需给出明确提示而非空白

别名: 无匹配 · empty filter · 搜索无结果

概念解释

关键字把名单滤成零条时,面板不能只剩一片空白,像还在加载或像控件坏了。要有一句明确的空结果(empty-result message):没有匹配「某某」、当前过滤下没有选项,并最好带一条下一步——改关键字、清过滤、看看是否要换一种拼法。空白会让人在「没有这项」和「搜索没工作」之间无法抉择,于是反复提交同一个词,或放弃选择。

空是过滤的空,不是集合真的空。集合真空是另一句(还没有任何角色可授),两句不能混用。

机制

人把列表区域当数据存在的证据。数据被滤光之后,区域若也空了,证据变成「这里没有列表」。加载中的空白、错误的空白、零命中的空白在外形上接近,归因于是乱的。一句含有用户刚才键入的词的句子,把归因钉在查询上:系统看见了你的词,只是没有对象认领它。下一步则阻止原地打转——清过滤能立刻证明名单还在,改拼法对应匹配规则,申请新项对应真的缺对象。

空结果还要保留搜索框本身。有的实现在零命中时拆掉整块面板,关键字跟着消失,用户无法改词。保留输入、替换的是名单区域。

边界

网络失败的空和零命中的空必须分开:失败带重试,零命中带改查询。权限把某些项藏掉时,空可能是「你看不见」,文案不能说「不存在」,否则用户会去错误的地方建一份。树在过滤下零命中,提示应说明是整棵树没有匹配,而不是当前展开节点没有。输入过程中的短暂空(还没敲完)不要闪出「无匹配」,应等短暂停顿,以免每个字母都吓一跳。

怎么落地

  • 零命中时在名单位置写含有当前关键字的句子,并提供清除过滤。
  • 区分「集合为空」「查询无匹配」「加载失败」三种空。
  • 空的时候搜索框仍在,焦点仍在,用户能直接改词。
  • 验证:键入一个保证不存在的词。若只看到空白面板或面板关掉,空结果就没被当作一种状态来设计。

延伸

  • 同组E3.17.1 选项过多时应提供搜索框而非依赖滚动查找 · E3.17.2 过滤应支持拼音、缩写等模糊匹配方式 · E3.17.4 已选项在过滤后仍需保持可见或可追踪
  • 相邻E6.06 空状态
  • 站内检索empty filter · no matching options · zero hits

同组卡片

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/handbook/E3.17.3