使用Apps脚本将Google Form嵌入Gmail中

时间:2018-11-21 17:21:17

标签: google-apps-script

我正在尝试使用Apps脚本在电子邮件中嵌入预填写的表单。电子邮件将仅发送给Gmail用户。我想要的功能与手动通过电子邮件发送表单时按“在电子邮件中包含表单”选项相同。

我已经成功创建了prefilledUrl,并使用UrlFetchAppHtmlService从表单获取HTML并发送电子邮件。

但是到达后看起来像下面的截图,用户无法提交。 Screenshot of form embedded in email

我正在使用的代码的精简版本如下:

var prefilledForm = 'prefilledForm link here');
Logger.log(prefilledForm);

var subject = 'Message from Office';
var response = UrlFetchApp.fetch(prefilledForm);
var htmlBody = HtmlService.createHtmlOutput(response).getContent();

var body = 'Dear '+mName+',\n\n'+mMessage+'\nPlease acknowledge by submitting the form below.\nRegards,\nSchool Office';

GmailApp.sendEmail(eEmail,subject,body,{
  noReply:true,
  htmlBody: htmlBody
});

是否像在下面的屏幕截图中选择“在电子邮件中包括表单”一样,将表单嵌入到电子邮件中?

enter image description here

1 个答案:

答案 0 :(得分:1)

  1. 使用电子邮件中包含的表格将表格发送给自己。
  2. 在浏览器中打开Gmail,然后按F12。在电子邮件正文中找到表单的div。 enter image description here
  3. 将div代码粘贴到Apps脚本HTML文件的正文中。或将其粘贴到您脚本中的HTML正文中,但我没有对其进行测试。 enter image description here
  4. 发送带有上述HTML文件的电子邮件,您应该能够获得类似的结果,如下所示。 enter image description here