Skip to content
v1.0当前版本
文档版本当前使用指南

当前仅提供 1.0 使用指南

设计好填、少错、易懂的表单 ​

本章目标:从用户任务出发设计表单,让正确操作更容易、错误更难发生,并照顾新增、修改和查看等不同使用场景。

1. 表单设计不是美化工作 ​

一张业务表单的质量主要体现在:

  • 用户是否知道从哪里开始;
  • 信息顺序是否符合工作思路;
  • 不必要的输入是否被减少;
  • 错误是否能在正确时间被清楚指出;
  • 不同角色能否快速找到自己需要的信息;
  • 在不同业务状态下,允许的操作是否清楚。

颜色、边框和字体很重要,但它们应该服务于信息层级,而不是代替业务设计。

2. 先定义用户任务 ​

采购申请表单至少服务四种任务:

  1. 申请人新建并提交;
  2. 申请人修改退回内容;
  3. 审批人查看并判断;
  4. 行政采购员查看批准内容并登记采购结果。

同一张表单中的信息,可以在不同任务下拥有不同重要程度和可编辑性。

新建 ​

重点是少填、快填、避免遗漏。

修改 ​

重点是看见原内容、退回原因和允许修改的部分。

查看 ​

重点是快速理解业务事实和进度,不应出现容易误以为可编辑的控件。

详细状态行为可参考填报态行为。

3. 按业务思路分组 ​

采购表单可以分为:

基本信息 ​

申请编号、申请日期、申请人、部门。

申请说明 ​

用途、紧急程度、期望日期。

采购明细 ​

物品、规格、数量、预计单价、行金额。

金额汇总 ​

申请总额和必要说明。

处理信息 ​

当前状态、审批结果、采购结果。

分组应让用户自然地从“为什么申请”走到“申请什么”,再看到“总共多少”和“后续怎样处理”。

4. 决定信息顺序 ​

推荐顺序:

  1. 用户作决定所需的背景;
  2. 用户必须填写的核心内容;
  3. 根据核心内容自动得到的结果;
  4. 低频补充信息;
  5. 过程和历史信息。

不要因为字段在数据字典里按字母排序,就按同样顺序摆放。

审批人最关心的用途、金额和明细应该在明显位置;内部维护备注不应占据表单顶部。

5. 减少不必要输入 ​

每个字段问四个问题:

  1. 系统是否已经知道?
  2. 能否从其他选择自动带出?
  3. 能否通过计算得到?
  4. 是否真的在后续规则、流程或查询中使用?

采购案例中:

  • 申请编号自动生成;
  • 申请日期默认当天;
  • 行金额自动计算;
  • 总金额自动汇总;
  • 当前状态随过程变化;
  • 申请人无需手工填写自己的姓名。

减少输入不仅提高效率,也减少不一致。

6. 选择合适的填写方式 ​

业务特点适合方式
只有少量固定选项单选或选择列表
可以选择多个值多选
是/否且没有第三种含义开关或勾选
候选项有层级级联选择
需要精确日期日期选择
需要长篇说明长文本
多行重复结构明细表

具体控件配置参见填写控件配置。

不要把一个有固定选项的字段设计成自由文本,再依赖用户记住标准写法。

7. 默认值要帮助用户,而不是替用户作决定 ​

好的默认值:

  • 申请日期默认当天;
  • 常见紧急程度默认“普通”;
  • 数量可以根据业务决定是否默认 1。

危险默认值:

  • 审批意见默认“同意”;
  • 实际采购金额默认等于预计金额;
  • 完成日期在新建时默认当天;
  • 申请类别默认一个并不适合大多数人的值。

默认值会被部分用户直接接受,因此必须代表安全、常见且可见的选择。

8. 校验要放在正确时机 ​

输入时即时提示 ​

适合简单格式和范围:

  • 数量不能为负数;
  • 日期格式不正确;
  • 文本超过限制。

保存草稿时 ​

只检查数据是否能够安全保存,不必强制所有正式信息完整。

提交时 ​

检查进入下一业务阶段所需的完整规则:

  • 至少有一行明细;
  • 每行物品、数量和预计单价完整;
  • 高金额申请已填写详细用途;
  • 总金额已经正确得到。

如果所有正式校验都阻止草稿保存,用户可能因为暂时缺一项信息而丢失已经填写的内容。

9. 写用户看得懂的错误提示 ​

差的提示:

保存失败。

好的提示:

第 2 行“数量”必须大于 0,请修改后重新提交。

好的提示包含:

  • 哪里有问题;
  • 为什么不允许;
  • 用户下一步怎么做;
  • 如果用户无法处理,应联系谁。

对跨字段规则:

期望采购日期不能早于申请日期。

对流程前提:

当前账号没有可用的直属主管,暂时无法提交。请联系应用管理员检查组织信息。

10. 设计明细表体验 ​

多行明细需要特别考虑:

  • 新增行入口是否明显;
  • 最少和最多允许多少行;
  • 是否允许复制上一行;
  • 行金额是否实时得到;
  • 删除行是否需要确认;
  • 重复物品如何处理;
  • 空白行在提交时怎样提示;
  • 总金额是否始终可见。

明细很多时,应考虑筛选、排序、批量填写和导入需求,但不要在第一版没有真实需要时过早增加复杂操作。

11. 用视觉层级表达业务重点 ​

  • 标题和分组名称清楚;
  • 核心字段靠前;
  • 必填标识一致;
  • 自动计算结果与手工输入有所区分;
  • 状态和异常信息明显但不过度抢眼;
  • 危险操作与普通操作分开;
  • 同类字段保持对齐;
  • 不用大量颜色表达本应由文字说明的含义。

具体排版参见排版与样式和分区布局。

12. 设计操作按钮 ​

按钮名称应说明业务结果:

  • “保存草稿”;
  • “提交审批”;
  • “撤回申请”;
  • “登记采购完成”。

避免:

  • “确定”;
  • “处理”;
  • “执行”;
  • 多个含义相近的“保存”按钮。

点击后要有明确反馈:

  • 是否成功;
  • 当前状态是什么;
  • 下一步由谁处理;
  • 失败时如何修正;
  • 是否可以重复点击。

13. 查看和审批体验 ​

审批人需要的是作决定所需的信息,不是所有设计字段:

  • 申请人和用途;
  • 金额和明细;
  • 紧急程度;
  • 必要附件;
  • 历史意见;
  • 当前需要作出的决定。

行政采购员需要:

  • 已批准的最终申请内容;
  • 采购所需规格和数量;
  • 可登记的采购结果;
  • 缺货、作废等异常入口。

通过分组、只读和状态控制,让不同角色知道哪些是事实、哪些是自己需要补充的内容。

14. 考虑输出和不同设备 ​

如果用户需要打印:

  • 屏幕布局不一定等于打印布局;
  • 明细跨页时表头如何重复;
  • 是否需要签字、编号、水印或多联;
  • 哪些内部字段不应打印。

如果大量用户在小屏设备使用:

  • 避免必须横向浏览的超宽表单;
  • 让主要操作容易找到;
  • 控制一次展示的信息量;
  • 用实际设备验证,不要只缩小浏览器窗口想象。

15. 用纸面原型先验证 ​

在正式配置前,可以画简单草图:

text
采购申请
┌ 基本信息 ─────────────────┐
│ 编号 [自动]  日期 [今天]  状态 [草稿] │
└─────────────────────────┘
┌ 申请说明 ─────────────────┐
│ 用途 [                    ] │
│ 紧急程度 [普通▼]            │
└─────────────────────────┘
┌ 采购明细 ─────────────────┐
│ 物品 | 规格 | 数量 | 单价 | 金额 │
└─────────────────────────┘
                        总额:¥____
[保存草稿] [提交审批]

让申请人、主管和行政分别指出:

  • 找不到什么;
  • 哪些内容看不懂;
  • 哪些内容不应该由自己填写;
  • 作决定时还缺什么。

16. 常见错误 ​

  • 按数据字段顺序排版;
  • 一打开就展示所有低频信息;
  • 草稿保存也要求全部正式信息;
  • 默认值替用户作出高风险决定;
  • 错误提示只有“操作失败”;
  • 自动计算字段看起来仍可随意修改;
  • 同一个按钮名称在不同状态代表不同结果;
  • 只为申请人设计,没有考虑审批和执行角色。

17. 本章完成标准 ​

  • [ ] 表单围绕明确用户任务设计;
  • [ ] 新增、修改、查看和处理场景都已考虑;
  • [ ] 信息按业务思路分组和排序;
  • [ ] 可自动得到的信息不再要求重复填写;
  • [ ] 草稿校验与提交校验已区分;
  • [ ] 错误提示能说明位置、原因和修正方法;
  • [ ] 明细新增、删除、计算和空行规则清楚;
  • [ ] 纸面原型已由至少两类真实角色评审。

下一步 ​

表单让用户输入和查看,动作让重复的业务规则自动发生。下一章学习设计计算、校验、联动与自动动作。

使用者 · 应用开发者 · 实例管理者