文章目录

分步表单应按业务任务分组,让用户知道当前步骤、剩余工作和可返回的位置。回退修改时保留不受影响的数据,重新判断依赖该字段的后续步骤;“之前填过”不代表“现在仍然有效”。可选步骤要能识别和跳过,最终错误应定位到具体步骤与字段,不能只把整条流程标红或让用户从头重填。

以商家开通采购平台账户为例,流程分为主体、联系人、结算、确认四步。用户在确认页把主体类型从个体工商户改成企业,联系人仍然可用,但本例的结算资料要求随之变化。先把界面状态连成原型,就能清楚讨论哪一步要重做、哪一步应保留。

四步商家资料流程中,主体类型变化只让结算步骤需要更新,联系人资料继续保留

不是四页就叫四步,每一步要完成一个问题

主体步骤回答“谁在开通账户”,联系人回答“后续联系谁”,结算回答“本流程需要哪些结算资料”,确认页让用户查看最终将提交的内容。这样的分组有业务意义,页面数量只是结果。若每一步都只有一个简单输入,却要求连续点击许多次下一步,拆分反而增加操作成本。

先整理字段和条件,再决定步骤。表单里哪些信息属于同一问题、哪些字段随其他选择变化,可以从B端表单的业务分组与条件联动入手。本篇进一步处理跨步骤关系:前一页的变化,怎样影响已经填写的后面几页。

W3C 的多页表单教程建议将长表单按逻辑组拆分,展示进度,并让可选步骤容易识别。这里的四步不是所有注册任务的通用模板,而是因为这组商家资料确实有四个不同的决策阶段。短表单是否拆分,仍应看实际填写负担。

开始前说清需要准备的材料和过程范围,但不要用一屏说明挡住填写。若流程中途会出现条件分支,开始时给出真实范围,例如“主体与联系人为必填,结算资料根据主体类型填写”,不要先承诺固定三步,后面突然增加一串必须完成的页面。

当前、已完成和需修改,不是同一种状态

步骤条至少要让用户区分自己正在处理的步骤、已经完成的步骤和尚未进入的步骤。如果存在可选内容,再明确标出可跳过;当前序信息变化导致旧答案失效时,增加“需修改”或同等清晰的状态。不能只用浅灰、深灰和紫色表达五种含义,让用户依靠颜色记规则。

“已完成”表示当前数据满足这个步骤的要求,不代表已经正式提交,也不保证以后永远有效。确认页之前,可以允许用户返回已完成的步骤查看或修改;当前步骤有未保存输入时,返回动作应保留这些输入或清楚说明影响,不能因为点击了步骤标题就无声清空。

本例允许从确认页回到主体或联系人,但尚不允许在主体类型未确定时直接跳到结算填写。步骤导航可以表达这种依赖:已完成的内容可返回,暂时不能进入的后续步骤解释前置条件。不要把所有步骤都画成链接,却在点击时只弹出一句“操作错误”。

步骤状态本例含义可进行的动作
当前步骤正在填写或修改编辑、保存继续,或按规则回退
已完成目前资料有效,尚不等于最终提交返回查看和修改
尚未填写必要前置资料未完成按顺序进入,不伪装成已完成
可选不影响本流程必需结果填写或明确跳过
需修改已有数据因前序变化不再满足要求定位受影响内容并调整

修改主体后,只让受影响的结算步骤失效

用户回到第一步,将个体工商户改为企业。在本流程设定中,两类主体需要的结算资料不同,因此第三步必须重新确认;但联系人姓名与手机号并不因为这个选择自动失效,第二步可以继续保留。最糟的两种做法,是清空后面所有内容,或者什么都不变却继续保留第三步的完成勾。

设计前先写一张依赖表。主体类型影响结算资料类型与相应必填项;联系人信息只影响后续通知对象;是否开通可选通知,仅影响通知偏好。依赖应具体到字段或业务规则,不要用“改了第一步,后面全部重置”代替分析。这张表也是产品与开发核对条件的依据。

保存主体变化时,提前说明接下来会发生什么,例如“主体类型已更新,请补充企业结算资料;联系人信息已保留”。将结算步骤标为需修改,确认页同步反映未完成状态。仍然有效的输入可以保留,已不适用的值不能偷偷继续提交;对需要清除的内容,则在改变前或发生时说明具体范围。

如果用户又把主体类型改回去,也不应该机械地恢复所有旧数据并直接标完成。系统可以提供已保存的草稿值帮助减少重填,但仍要根据当前规则判断有效性。特别是资料格式、权限或可选项发生变化时,历史填写不能替代当前确认。

在 Pixso 中从确认页画一条回到主体页的连线,再从主体更新画到“结算:需修改”。联系人步骤继续保持已完成,用不同的箭头说明“影响结算”和“保留联系人”,不要把它画成一条全部重走的直线。这样同一原型能解释为什么只需补第三步。

Pixso画布中的四步商家资料原型,确认页回退主体类型后结算需修改,联系人仍为已完成
前序变化按依赖影响后续步骤,保留联系人并不代表跳过结算资料的重新确认。

跳过可选项,与绕过必填项要分开

可选步骤应直接标明可选,并提供“暂不设置”这类能说明结果的动作。不要让用户点下一步后先看到错误,再猜哪项可以不填。跳过以后,确认页可以显示“未设置”,必要时允许返回补充,但不能把未设置状态伪装成已经同意或已经完成某项授权。

条件分支完全不适用时,可以从流程中移除对应步骤;若用户需要理解为什么它不再出现,则在当前页面说明变化。步骤总数与编号应随真实路径一致,不能页面已经只有三步,进度仍停在“3 / 4”。需要保持跨团队术语稳定时,也可以用任务名称为主,避免用户过度依赖数字顺序。

确认页不是把四个步骤标题再列一遍。它应显示本次真正要提交的关键资料,并给每组内容一个明确的修改入口。返回联系人修改后,完成操作可以回到确认页,不一定要再经过结算页;只有修改确实影响结算规则时,才引导去处理对应依赖。

W3C 的避免重复输入技巧提供了沿用前序数据的做法。对本例来说,同一个联系人不应在确认步骤再手动填一次;如果确实需要再次验证,应给出实际理由,并避免把单纯的重复录入当成安全设计。

最终提交出错时,定位到那一步的那个字段

点击最终提交后,如果企业结算资料缺少必填项,错误汇总应说明“结算资料:请补充……”并能跳到相应字段。步骤条上的第三步同步标记问题,字段旁保留具体说明。不能只把确认页顶部写成“资料不完整”,再让用户挨个打开四页寻找原因。

进入出错步骤时,页面标题、当前位置和聚焦位置应能帮助用户理解发生了什么。修正该字段后清除对应错误,但如果同一步还有其他问题,步骤仍不能提前显示完成。只有当前规则下所有必需条件满足,才更新它的整体状态。

对于保存草稿、切换步骤和最终提交,也要区分作用。下一步可能只暂存当前资料,最终提交才产生业务记录;按钮文案与成功反馈应明确这一点。遇到网络异常或结果未知时,保留已填写内容并确认当前状态,不能要求用户从第一步重新注册一遍。

测试这套流程时,除了顺着四步完成一次,更要从确认页回退:改主体类型后只更新结算,改联系人后其他步骤保持有效,跳过可选项后确认页仍准确,提交错误能直接落到问题字段。再用键盘和窄屏完成同样的回退路径,检查步骤条不会因横向空间不足隐藏“需修改”的关键状态。真正可靠的分步表单,应让返回修改和向前完成一样容易理解。