交付时真正要回答的问题
会员机构在同一表单提供“保存草稿”和“发送询盘”。若请求丢掉被点击的按钮,接收端可能无法区分两者。验收前应明确有限的操作代码及每项服务端规则,不能只看两颗按钮存在。
依据与可证明的范围
作为提交者且带name的提交按钮会贡献自己的值;requestSubmit可以指定提交按钮。 MDN · 2026年10月16日核对。
已填写的合成验收例子
合成教学例子,不是真实客户记录。先看输入与预期,再运行下方隔离的浏览器练习。表格窄屏可横向滚动;字段名和示例值保留原样,方便与测试源码对照。
| 输入 | 检查 | 预期 |
|---|---|---|
| name=action value=draft | FormData(form, draftButton) | action=draft |
| name=action value=send | FormData(form, sendButton) | action=send |
| FormData(form) without submitter | 操作证据 | 没有action字段 |
怎样核验,不只看界面
- 定义保存草稿和正式发送各自所需字段与权限。
- 在浏览器练习中对照两种提交者载荷。
- 确认接收测试端拒绝未知action,且不把草稿当成已发送消息。
怎样解释结果
练习只区分意图,不会真实保存或发送。服务端应对白名单操作独立执行校验和授权。交付保留两份载荷及两个测试状态。按钮显示文案可翻译,稳定操作代码不应跟着悄悄改变。
明确不证明什么
需核对支持浏览器范围内的FormData提交者参数;本例不实现工作流或邮件送达。
可运行练习与交付记录
打开浏览器验收练习 · 查看可读测试源码。练习只在浏览器内创建临时元素,使用合成内容,不读取账号、不上传文件、不发送邮件或表单。记录被测浏览器版本、检查名、实际值与通过状态。真实集成结果另记,不能用本地通过代替。