我在侧边栏中运行了一个运行html表单的Google Apps脚本。 表单答案用于生成文档。我的问题是我想在程序完成后关闭侧边栏(点击提交后)。
<form id="myForm">
<input name="name" type="text"/>
<input type="button" value="Submit" onclick="google.script.run.withFailureHandler(fail).
withSuccessHandler(google.script.host.close()).
doStuff(this.parentNode)"/>
</form>
如果删除withSuccessHandler,程序将按预期运行,否则不会。我有办法在doStuff()结束时关闭侧边栏吗?
Documentation:侧边栏可以通过在HTML服务接口的客户端调用google.script.host.close()或在UI服务接口中调用UiInstance.close()来关闭自己。侧栏不能被其他界面关闭,只能由用户或自己关闭。
UiInstance已标记为已弃用。
答案 0 :(得分:0)
onclick()
属性可以包含多个函数。您可以在所有代码之后放置google.script.host.close()
语句。只需确保在所有google.script.run
内容中放置一个分号:
<input type="button" value="Submit"
onclick="google.script.run.withFailureHandler(fail)
.doStuff(this.parentNode); google.script.host.close();"/>
您将大量代码打包到onclick()
属性中。你可以有一个单独的功能:
onclick="serverCall();"
window.serverCall = function() {
google.script.run
.withFailureHandler(fail)
.doStuff(this.parentNode);
google.script.host.close();
};