coze卡片表单需用空白模板+表单组件,字段名严格设为ticket_id/priority并绑定form_data对象,提交目标选“触发工作流”,工作流起始节点必须是“卡片表单提交”事件,再通过变量赋值、http请求及条件分支实现数据接收与反馈。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你需要在扣子(Coze)中构建一个带交互按钮、可动态填充字段、提交后实时返回结果的卡片式表单,但卡在变量绑定错乱、提交后无响应、或数据无法回流到后续节点上——这篇文章只讲从卡片创建、表单配置、变量映射到工作流接收的完整链路,不绕弯,每一步都对应真实界面操作和关键断点。
创建支持表单交互的卡片模板
登录Coze→点击左侧【卡片】→【创建卡片】→选择「空白卡片」模板,不要选「列表」或「单卡摘要」类预设,它们默认不启用表单组件能力。
在组件面板中,拖入「表单」布局组件(不是「容器」或「分组」),它自带 submit 按钮和表单语义结构;直接拖入「输入框」基础组件到表单内,双击编辑其属性:将「字段名」设为 【ticket_id】,这是后续所有映射的唯一标识符,大小写敏感且不可含空格或下划线。
再拖入一个「下拉选择」组件,字段名设为 【priority】,在选项配置中手动添加三项:低、中、高——注意此处不能用变量动态生成选项,否则提交时会因未初始化导致校验失败。
最后拖入「按钮」组件,类型选「提交」,并确保其「触发动作」设为「提交表单」,不是「跳转链接」或「执行工作流」——这是表单能否触发后续流程的开关,选错就彻底断链。
绑定表单变量并配置提交目标
点击卡片右上角「变量」→【创建变量】→变量名称填 【form_data】,类型选「对象」,默认值留空(JSON格式为空对象 {} 即可)。
回到表单组件内部,逐个点击每个输入组件→右侧「绑定变量」下拉菜单中,选择刚创建的 【form_data】 →再点「字段映射」→将输入框的字段名 【ticket_id】 映射到 form_data.ticket_id,下拉框的 【priority】 映射到 form_data.priority。
这一步极易出错:如果直接在输入框里写 {{ticket_id}} 而不走「绑定变量」路径,提交后变量不会注入上下文,后续工作流永远收不到数据。Coze 的表单变量必须通过「组件→绑定→字段映射」三级穿透,缺一不可。
在表单组件最外层设置「提交目标」:点击表单组件→右侧配置栏找到「提交后行为」→选「触发工作流」→从下拉列表中选择你已创建好的目标工作流(如“工单创建流程”)。注意:该工作流必须已存在,且名称不含空格或特殊字符,否则下拉列表里根本不会显示。
配置接收表单数据的工作流
第一步:打开目标工作流编辑页→确保开始节点类型为「事件触发器」→触发类型选「卡片表单提交」,不是「Bot消息」或「定时触发」——只有这个类型才能自动捕获表单 payload。
第二步:添加「变量赋值」节点→在「赋值表达式」中填:
form_input = {{trigger.payload.form_data}}
第三步:添加「HTTP 请求」节点→URL填你的后端接口地址(如 https://api.company.com/v1/ticket)→请求方法选 POST→Body 类型选 JSON→Body 内容填:
{
"ticket_id": "{{form_input.ticket_id}}",
"priority": "{{form_input.priority}}",
"submit_time": "{{now()}}"
}
第四步:在 HTTP 节点后接一个「条件分支」节点→判断表达式填:
{{http_response.status == 201}}
成立分支连「发送消息」节点,内容写“✅ 工单已创建:{{form_input.ticket_id}}”;不成立分支连另一个「发送消息」节点,内容写“⚠️ 提交失败,请重试”。











