我在提交给GAS Web App的iFrame中有一个简单的表单:
<form action="https://script.google.com/macros/s/AK...a4/exec" method="POST">
Name:<br>
<input type="text" name="name">
<br>
Email:<br>
<input type="email" name="email" value="">
<br><br>
<input type="hidden" name="product" value="Inv">
<input type="submit" value="DOWNLOAD" style="margin:0px auto; display:block; width: 10em; height: 2.4em;">
</form>
我想将来自doPost服务的消息发送回iFrame,例如:
function doPost(e) {
...
var response = "<HTML><BODY><H1>Error processing request</H1><BR><BR><P>Missing or invalid parameter in request.</P></BODY></HTML>"
return ContentService.createTextOutput(response).setMimeType(ContentService.MimeType.TEXT);
}
但是,提交后iFrame将被清空,并且永远不会显示我的消息。我错过了什么?
谢谢!
答案 0 :(得分:0)
如documentation中所述,使用createTextOutput(content)
方法创建可以为给定内容提供服务的新TextOutput
对象。尝试使用此示例代码:
function doGet() {
var output = ContentService.createTextOutput("Hello world!");
return output;
}
要进一步使用您的代码,请尝试删除doPost()
功能中的HTML标记,看看它是否有效。
最后,还请检查此SO帖子中提供的解决方案 - HTML Form does not submit to spreadsheet using doPost。它也可能有所帮助。