我使用返回FormResponse的onSubmit of a form向用户发送邮件确认,以及更新响应的链接。
我无法弄清楚如何知道onSubmit()的上下文:如果响应已被编辑或是新的。
没有像isEdited()或isUpdated()
这样的函数我尝试了getId(),它总是返回一个值。 我也可以将id与url进行比较,但getUrl()返回null。
如果只是更新了回复,我的观点是(不)发送不同的电子邮件。
答案 0 :(得分:0)
您可以手动阅读回复表,看看它是否是最后一行。除非响应是及时发送的(除了在前一个触发器执行时到达的另一个响应),否则将起作用
答案 1 :(得分:0)
根据预期回复的数量,可以存储每个回复的ID,例如,在ScriptDb中确定是否发送邮件。
ScriptProperties 不应该用于这些情况,我在此处仅用于演示目的。
/* CODE FOR DEMONSTRATION PURPOSES */
function onFormSubmit(r) {
var _key = r.response.getId();
if (_key && !isEdited_(_key)) sendMail_();
}
function isEdited_(key) {
var _isEdited = false;
if (!ScriptProperties.getProperty(key))
ScriptProperties.setProperty(key, 'FormResponse');
else
_isEdited = true;
return _isEdited;
}
/* CODE FOR DEMONSTRATION PURPOSES */