You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何找到触发Google Form脚本运行的对应FormResponse提交记录

正确获取触发Google Form脚本的对应FormResponse方法
  • 核心实现方案:直接通过表单提交触发器的事件对象获取,这是唯一不受并发提交影响的100%准确方案

你给表单绑定的可安装提交触发函数,直接接收事件参数e即可取出对应触发本次脚本运行的提交记录,无需遍历全量提交:

function onFormSubmitHandler(e) {
  // 直接从事件对象取目标提交,完全不受并发提交干扰
  const targetResponse = e.response;
  
  // 示例:获取本次提交的所有回答内容
  const responseItems = targetResponse.getItemResponses();
  responseItems.forEach(item => {
    console.log(`问题:${item.getItem().getTitle()},回答:${item.getResponse()}`);
  });

  // 示例:获取该条提交的唯一ID,可用于后续业务溯源
  const uniqueResponseId = targetResponse.getId();
}

不要使用Form.getResponses()[Form.getResponses().length - 1]这类取最后一条提交的逻辑,并发场景下多个提交几乎同时写入时,脚本触发顺序和提交写入顺序可能不一致,会出现取到其他用户提交记录的问题,该问题已经过实测验证。

内容的提问来源于stack exchange,提问作者Julia

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 00:09:02