使用Google Docs表单的HtmlService doPost

时间:2012-10-16 03:28:28

标签: google-apps-script

我创建了一个谷歌文档表单,并制作了一个谷歌脚本小工具,将数据发布到表单的电子表格后端,然后返回自定义html5确认页面。

我在我的脚本代码中使用了HTMLServicedoPost(e)doGet(e),还使用我的小工具(表单和确认html文件)创建了2个html文件。

将数据写入正确的电子表格的小工具;但是,它没有返回我用我的小工具创建的正确的确认html文件。它将返回确认页面,该页面是google docs表单的一部分。我的代码doPost部分的剪辑如下。有没有人有任何想法如何让它返回我创建的自定义确认html文件而不是Google文档?

function doPost(e) {
  var template = HtmlService.createTemplateFromFile('confirm.html');
  template.entry_0 = e.entry_0;
  template.entry_1 = e.entry_1;
  template.entry_2 = e.entry_2;
  template.entry_3 = e.entry_3;
  template.screenshot = e.parameter.screenshot;
 return template.evaluate();  
}

我的form.html文件中的表单操作代码行位于下方。

<form action="<?= "https://docs.google.com/spreadsheet/formResponse?formkey=$mungedformkey" ?>" method="post">

1 个答案:

答案 0 :(得分:2)

当您发布到URL时,该URL决定接下来会发生什么 - 您的doPost永远不会被调用。作为替代方案,尝试发布到脚本(使用doPost或更好地使用google.script.run post语法)并使用UrlFetchApp将数据传递给表单;那么你将控制表单响应。