【问题标题】:Can I fill in TextItem by Google apps script?我可以通过 Google Apps 脚本填写 TextItem 吗?
【发布时间】:2013-12-02 04:08:41
【问题描述】:

我使用 Google Form Builder 制作了一个表单,然后为它添加了一个脚本。

我可以运行 Session.getEffectiveUser().getEmail() 到受访者的电子邮件地址。但我无法在文本框中填写以帮助他们。我可以用 Google App Script 做这样的事情吗?

【问题讨论】:

    标签: google-apps-script google-forms


    【解决方案1】:

    我想我找到了解决您问题的方法。但我必须承认这并不明显。 在应用程序脚本文档中,您拥有创建prefilled url 的一切。
    但是为此,您需要有一个 ItemResponse 元素,我没有找到任何解释来构建一个。诀窍是当您有一个 item 时,如果您将其作为定义类型“asTextItem() "。
    理解它的最好方法是看下面的代码:

    function getPreFilledItem(){
      var form = FormApp.openById("YOUR_FORM_ID"); 
      var items = form.getItems();
      var itemOfInterest;
      for(var i in items){
        if(items[i].getTitle()=="YOUR_QUESTION_TITLE"){
          itemOfInterest=items[i];
        }
      }
      Logger.log(
        form.createResponse().
        withItemResponse(itemOfInterest.asTextItem().createResponse("PREFILLED_TEXT")).
        toPrefilledUrl()
      );
    }
    

    希望对你有所帮助,
    哈罗德

    【讨论】:

      【解决方案2】:

      您无法通过将脚本附加到表单来动态修改 Google 表单。请参阅recent question I asked 以获得更好的理解。

      基本上,您只能使用 Google Apps 脚本自动创建表单。到目前为止,您还不能为这些项目设置值(我当然希望他们将来会添加这个......)。

      您还可以通过查看文档 (TextItem, for example).

      【讨论】:

      • 叹息,我只是一遍又一遍地看那个裁判,只是祈祷你说的不是真的:(
      • 不幸的是,在我看来,Forms 服务有点欠发达。表格是我办公室工作流程的驱动力 - 存在严重限制的事实有点不幸。很遗憾,我们不能使用 GAS 自动填写表单的某些元素,例如电子邮件地址。这将防止 如此 很多问题......也许他们很快就会让 Apps 脚本更容易访问表单!我们只能希望:P
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-08-15
      • 1970-01-01
      • 2023-01-13
      • 2015-05-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多