Woj*_*tek 7 google-apps-script google-forms
表格提交后如何发送通知电子邮件?
我有一个Google表单,我打开它,然后进入菜单More-> Script Editor并添加一个脚本:
function OnSubmit(e) {
MailApp.sendEmail ("myemail@mydomain.com", "Form Submited: Foo feedback " + Date.now(), "Form Submited: Foo feedback");
}
Run Code Online (Sandbox Code Playgroud)
我保存脚本并按下运行按钮测试它的工作原理.该电子邮件将发送至myemail@mydomain.com.
然后我填写Google表格,但电子邮件未到达myemail@mydomain.com邮箱.
PS我不想使用"电子邮件通知表单"插件,因为它请求访问许多权限.我不想使用"表单通知",因为由于某种原因它不适用于我(电子邮件无法发送).
要在提交表单时发送电子邮件,您需要将以下脚本复制到脚本编辑器,运行createTrigger
一次并接受必要的权限。该函数查找“表单提交”触发器,如果没有找到,则会创建一个新触发器。之后您可以提交表单,它将发送onFormSubmit
函数中指定的电子邮件
function createTrigger() {
var form = FormApp.getActiveForm(); // active form
var formTriggers = ScriptApp.getUserTriggers(form); // form triggers
var noTrigger = true; // assuming there is no 'onFormSubmit' trigger
for (let t = 0; t < formTriggers.length; t++) {
let trigger = formTriggers[t];
if (trigger.getEventType() == ScriptApp.EventType.ON_FORM_SUBMIT) {
noTrigger = false; // trigger exists
break;
}
}
if (noTrigger) {
Logger.log('Creating trigger');
var form = FormApp.getActiveForm();
ScriptApp.newTrigger('onFormSubmit')
.forForm(form)
.onFormSubmit()
.create();
} else {
Logger.log('OnFormSubmit trigger already exists')
}
}
function onFormSubmit() {
MailApp.sendEmail ('recipient@email.com', 'New form submission', 'Form submitted on ' + new Date());
}
Run Code Online (Sandbox Code Playgroud)
终于找到了,藏在下面
Responses
标签...
菜单按钮Get email notifications for new responses
. 归档时间: |
|
查看次数: |
7050 次 |
最近记录: |