嗨,大家好,
Google App Script可以在很多方面使用。我知道因为我已经尝试了其中一些,但我不是专家所以,情况就是这样。
我创建了一个电子表格
使用脚本编辑器附带的新UI Building创建表单。
命名为:gtest01
UI组成:
现在,代码是:
/* This is so when I want to just deploy it as a [webapp] using the
script editor -> Publish Deploy as Web App
*/
function doGet(e) {
var app = UiApp.createApplication().setTitle("Sheet Application");
app.add(app.loadComponent("gtest01"));
Logger.log("Application UI Loaded");
return app;
}
function message_me(e) {
Browser.msgBox("my message");
}
function hide_label(e) {
var app = UiApp.getActiveApplication();
label =app.getElementById("label_caption");
label.setVisible(false);
}
function show_label(e) {
var app = UiApp.getActiveApplication();
label =app.getElementById("label_caption");
label.setVisible(true);
}
// this code is for when the spreadsheet is shared so they can access the form
function showform_() {
var app = UiApp.createApplication();
app.add(app.loadComponent("gtest01"));
SpreadsheetApp.getActiveSpreadsheet().show(app);
}
function onOpen() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var menuEntries = [];
menuEntries.push({name: "Show Form", functionName: "showform_"});
ss.addMenu("e-Test", menuEntries);
}
第一种情况是共享电子表格时
第二种情况是发布为Webapp时。
请帮助我搜索并尝试了示例代码并在论坛中回答错过了什么。
谢谢
Nick Ace
答案 0 :(得分:2)
第一种情况 当显示和隐藏按钮没有任何反应时 - 为什么以及如何修复它?
在你的功能中,最后使用return app。除非您返回app对象,否则UI不会更新。
如何在不关闭表单的情况下显示消息? - 试试
SpreadsheetApp.getActiveSpreadsheet().toast()
第二种情况
当URL链接是Access时,UI总是更新,就像它是缓存一样,我该如何修复它? - 将最新代码保存为版本
在开发链接上:当显示和隐藏按钮没有任何反应时 - 再次返回应用程序将处理此
在开发链接上:单击消息按钮时... - Web应用程序不支持Browser.msgBox。
答案 1 :(得分:1)
使用UI时,通常最好让所有内容都在这个Ui中发生,所以尽量避免使用Toast显示消息(因为它们在Web应用程序中都不受支持)。 由于您使用的是GUI,因此使用最初不可见的消息并使其在处理程序例程中可见时,应该非常容易使用标签。 请注意,除非您需要通过此操作执行其他操作,否则此类处理程序也可以是客户端处理程序。
至于你提出的其他问题,我们(非常快)的朋友Srik已经彻底回答了问题; - )