【发布时间】:2014-06-23 16:04:56
【问题描述】:
只有当我打开表单进行编辑时,我的 Google 表单上的 onOpen 事件才会被激活,而不是当我打开它来回答 (/viewform) 时。实际上,我只是希望它在有人打开要回答的表单时运行,因为我的脚本会使用表格中的当前信息更新组合框。我不确定这是否是最好的方法,但我愿意接受建议。
我尝试创建一个函数 onOpen() 并创建一个 doIt() 函数并在资源 > 添加触发器菜单上手动将触发器添加到 onOpen。触发器已正确列出,并且似乎在打开表单以正确更新它时工作。可能那时我得到了错误的触发器处理程序,但没有其他我想要的(只是onEdit,应该做onOpen正在做的事情,以及onInstall)。
这方面的文档非常简洁,并且绝对专注于电子表格脚本。然而,他们提到了自定义钩子,称为可安装触发器,其中之一实际上是:
当打开电子表格或表单编辑器时。 (请注意,此触发器不会在用户打开表单进行响应时激活,而是在编辑器打开表单进行修改时激活。)与简单的触发器 onOpen 不同,可安装触发器可以充当安装触发器的用户。
这表明 onOpen 应该完全按照我的意愿行事......所以现在我很困惑。
另外,我不确定权限将如何工作。目前,据我所知,似乎任何与我共享表单的人都可以编辑它,每个人都可以回答它,只要这个人有 URL。有没有办法将人们列入白名单来回答?我不太喜欢 URL 是阻止外人看到我正在加载到组合框中的数据的唯一障碍,最重要的是,通过提交表单来更新这些数据......似乎蛮力很容易解开很多“秘密”表格都是这样......或者从安全的角度来看可以吗,我只是疯了?
【问题讨论】:
标签: google-apps-script google-forms