怎样组织搜索、筛选与结果列表?
让用户看见当前条件、结果和清除方法,分清没有匹配与读取失败。
搜索按字词寻找内容,筛选按条件缩小范围。两者需要清楚展示当前选择和结果,让用户知道为什么看到这些项目、怎样重新查找。
先记住这几件事
- 筛选条件 是用来限制范围的选择,如状态或日期; 排序 只改变先后顺序,不一定改变结果数量。
- 显示当前条件,并提供修改或清除方法,避免用户忘记自己限制了什么。
- 分页 把结果分成几部分;切换条件后应约定页面位置与选择怎样处理。
- 没有匹配结果、还没有数据和读取失败是不同状态,需要不同说明。
选择筛选方式见 Cloudscape 筛选模式 ;结果组织见 Cloudscape 表格视图 。
查找结果的流程
搜索状态的示意
以下是假设成员列表;数量只是示例。
| 阶段 | 当前条件 | 结果与下一步 |
|---|---|---|
| 初始 | 无筛选 | 12 位成员 |
| 筛选 | 状态为待邀请 | 3 位成员 |
| 增加搜索 | 名称为不存在的名字 | 0 位匹配,提供清除条件 |
用一个例子走一遍
管理员先筛选待邀请成员,再输入一个名字。没有匹配时,页面保留当前条件并说明无结果;管理员清除名字后重新看到三位待邀请成员。如果请求失败,则提示重试,不把失败说成“没有成员”。
边界与常见误解
搜索框不一定必须每输入一个字就发送请求,要按任务和反馈方式约定。复杂筛选也不是越多越好,先提供用户真正需要的条件。结果数量要反映实际范围,不能让当前页数量冒充总数量。