Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google apps script 如何在电子表格.show(HtmlOutput)之后取消显示()?_Google Apps Script_Google Sheets_Google Spreadsheet Api - Fatal编程技术网

Google apps script 如何在电子表格.show(HtmlOutput)之后取消显示()?

Google apps script 如何在电子表格.show(HtmlOutput)之后取消显示()?,google-apps-script,google-sheets,google-spreadsheet-api,Google Apps Script,Google Sheets,Google Spreadsheet Api,我的工作非常顺利: var theForm = HtmlService.createTemplateFromFile('aForm').evaluate(); var theSpreadsheet = SpreadsheetApp.getActiveSpreadsheet(); theSpreadsheet.show(theForm); 当用户提交数据后,我想关闭“表单”。电子表格上是否有类似unShow()或hide()的方法?HtmlOutput上的harikiri()方法 理想情况下,

我的工作非常顺利:

var theForm = HtmlService.createTemplateFromFile('aForm').evaluate();
var theSpreadsheet = SpreadsheetApp.getActiveSpreadsheet();

theSpreadsheet.show(theForm);
当用户提交数据后,我想关闭“表单”。电子表格上是否有类似unShow()或hide()的方法?HtmlOutput上的harikiri()方法

理想情况下,我希望使用reShow()命令保存提交的数据,刷新电子表格并再次调用show()

我没有办法做这些事情,所以我只是禁用提交按钮。啊

非常感谢您的建议

更新(2012/08/28):我应该提到,我正在使用这个调用从HTML表单调用与最初打开的“theForm”相同的代码

google.script.run.recordTheForm(jsonTheForm);
我是否正确地假设google.script.run.*()调用不知道前面设置的任何变量值?

调用此函数:

theForm.close();
SpreadsheetApp.flush();
theSpreadsheet.show(theForm);
祝你好运


Thomas van Latum

HtmlService没有app.close()的等价物。。。这是一个疏忽,不是故意的,我们会纠正它


编辑:从客户端JavaScript代码中(不是从像
app.close()
这样的服务器中,而是在HtmlService代码本身中),您现在可以调用
google.script.host.closeDialog()

Thomas。谢谢你,由于我最初提供的信息不足,你为我指明了正确的方向。我没有找到这样的方法HtmlOutput.close(),尽管有HtmlOutput.clear()。然而,经过一番探索,我得出了我在上面的更新中提到的结论;使用google.script.run调用调用内存空间似乎是不可能的。最后,通过刷新表单并显示一个新表单,我为最终用户提供了他们想要的。他们可能每次都会使用更多的内存,但我认为没有必要,甚至没有办法去检查在那么深的地方发生了什么。我们很乐意提供帮助:)我只是想输入这个,假设HtmlOutput有一个类似UiApp的关闭功能。但是clear在那时工作得很好。我不知道如何减少内存。我也不能使用clear()!从浏览器中的js代码中调用*.gs代码并没有给我与最初启动HtmlOutput时相同的内存空间。你能发布(发送)你的完整代码吗?这样我就可以看到你到底想做什么以及哪里出错了?这一点无可争辩!谢谢你让我知道。