【问题标题】:How to autofill respondent's email addresses in Google Forms?如何在 Google 表单中自动填写受访者的电子邮件地址?
【发布时间】:2017-02-11 10:19:48
【问题描述】:

所以,我希望当我通过 Google 表单发送电子邮件时(现在可以将整个表单自动嵌入到消息中 - 我通常这样做)收件人的电子邮件已经填写在适当的场地。如果受访者希望使用不同的地址来接收确认电子邮件,他们应该仍然可以更改它。

在有多个收件人的情况下,每个收件人显然应该有自己的电子邮件地址自动填充。

视觉上(作为一个新生,我没有直接嵌入图像的声誉):

The highlighted part in the image should automatically be filled, based on the email address the form was sent to.

我确信这应该通过脚本来完成,但我对脚本编写还不够熟练。我找到了this,但这并不完全正确,主要是因为我不想使用预定义的联系人列表。

我说得够清楚了吗? :) 这是我的第一个问题,我希望我设法把它与预期相提并论。

【问题讨论】:

  • 对于 s.o. 来说不是一个有效的问题。这是为那些想要学习如何编码的人准备的,而不是为了要求给定规范的代码。为了使其有效,请向我们展示您迄今为止在应用程序脚本中的尝试以及失败的原因。
  • 说实话,我还没有创造出与我所需要的非常相似的东西。也欢迎指示在哪里看。我曾经并且仍在搜索网络,但我得到的只是与上面链接的代码类似的代码,这些代码使用预先存在的电子邮件列表。如果我以这种方式提出的问题完全不适合 StackOverflow,我将删除它。
  • 它太宽泛了,因为您还没有尝试过任何代码或算法。请记住,不可能按照您在回复表上直接提出的要求进行操作。您需要保留一张单独的表格来整合信息,并使用类似 onFormSubmit 的东西来检测新条目。我认为这也太宽泛了,无法给出正确答案。
  • 我明白了,谢谢。我将删除这个问题,并在我有更多要展示的时候回来。 ;)

标签: email google-apps-script google-forms autofill


【解决方案1】:

首先打开表单的脚本编辑器并粘贴以下代码:

function myFunction() {
      var form = FormApp.openById(YOUR_FORM_ID);
      var items = form.getItems();
      var url = form.createResponse().withItemResponse(items[1].asTextItem().createResponse(Session.getActiveUser().getEmail())).toPrefilledUrl());  //items[1] is the input question for email ID

      Logger.log(url);
    }

现在,运行此代码并检查您的日志(Ctrl+Enter),您将能够看到一个 URL。将其粘贴到您的浏览器中,您将获得预填充和链接。 希望对您有所帮助。

【讨论】:

    猜你喜欢
    • 2014-12-13
    • 2010-12-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-20
    • 1970-01-01
    相关资源
    最近更新 更多