Google Apps Script读取'Processor Name'时出现undefined错误求助
解决Google Apps Script表单提交报错:TypeError: Cannot read properties of undefined (reading 'Processor Name')
这个报错的核心原因是事件对象e或者e.namedValues未定义,常见场景和解决办法如下:
常见原因及修复方案
不要手动运行
sendEmail函数
手动在脚本编辑器里执行函数时,没有表单提交触发的事件参数e,此时e是undefined,自然无法读取e.namedValues。必须通过实际提交Google表单来触发这个函数。检查触发器配置
- 打开脚本编辑器,点击左侧的闹钟图标进入触发器页面。
- 确认已创建表单提交类型的触发器,绑定的函数是
sendEmail。 - 触发器的事件源选择“表单”,事件类型选择“当表单提交时”。
核对表单字段名称
确保Google表单里对应问题的标题和代码中的"Processor Name"完全一致,包括大小写、空格、标点符号。比如表单里写的是“处理器名称”或者“processor name”,代码里的键也要同步修改。增加容错代码(可选)
为了避免意外报错,可以在函数开头增加判断逻辑:function sendEmail(e) { // 先判断事件参数是否存在 if (!e || !e.namedValues) { console.log("函数未通过表单提交触发,缺少必要参数"); return; } var processor = e.namedValues["Processor Name"]; console.log("named_values::", e.namedValues); console.log("values::", processor); }
内容的提问来源于stack exchange,提问作者Cool_Coder
相关产品推荐
相关产品推荐

