【发布时间】:2014-03-27 07:44:01
【问题描述】:
我似乎无法让表单触发的脚本正常运行。准确地说,它运行,我可以做一些事情,但我无法访问应该发送到事件处理函数的表单数据。
我有一个由 Google Sheet 表单触发的非常简单的脚本:
function OnFormSubmit(e)
{
try {
var timeStamp = e.namedValues["Timestamp"][0];
MailApp.sendEmail(emailAddress, "SCRIPT ENTRY", timeStamp);
} catch (x) {
var message = x.toString() + "\n[" + Utilities.jsonStringify(e) + "]\n"
MailApp.sendEmail(emailAddress, "SCRIPT ERROR", message);
}
}
我还有一个非常简单的表格,只有一个项目。我已经设置好了触发器。表单运行并向电子表格添加一行。我收到电子邮件,所以脚本正在触发。但是我收到了 SCRIPT ERROR 电子邮件。消息是:
TypeError: Cannot read property "Timestamp" from undefined.
[{"response":"FormResponse","authMode":"FULL"}]
“时间戳”确实存在于表单响应表中(我相信它总是会存在;时间戳是一个自动条目)。
似乎 OnFormSubmit() 没有传递我认为应该传递的参数。但是我看到的所有例子都是这样工作的。
有什么帮助吗?
【问题讨论】:
标签: forms google-apps-script google-sheets google-docs