google-apps-script - 使用可安装的 onedit 触发器从共享的谷歌表调用 showModalDialog
问题描述
我有一个关于从共享的谷歌表调用 showModalDialog 的问题。
这是我的问题的演示 -
GS:
function createTrigger()
{
ScriptApp.newTrigger('testtrigger')
.forSpreadsheet(SpreadsheetApp.getActive())
.onEdit()
.create();
}
function testtrigger(event)
{
var sheet1 = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var actRng = sheet1.getActiveRange();
var editColumn = actRng.getColumn();
var editRow = actRng.getRow();
var cell1 = sheet1.getRange(2, 2);
var cell2 = sheet1.getRange(2, 3);
if (editColumn == 1 && editRow == 2 ) //when updating the right cell
{
cell1.setValue("changed");
showDialog();
cell2.setValue("changed");
}
}
function showDialog()
{
var uiDialog = HtmlService.createHtmlOutputFromFile('myHtml');
return SpreadsheetApp.getUi().showModalDialog(uiDialog,"title");
}
myHtml.html:
<select>
<option value="Test1">test1</option>
<option value="Test2" selected="selected">test2</option>
<option value="Test3">test3</option>
</select>
<hr/>
它与我自己的帐户完美配合(cell1 和 cell2 都已“更改”)。但是,我将此文档共享给了另一个帐户。然后共享帐户调用“showDialog();”似乎有问题 (此外,只有 cell1 已“更改”)。我想这是关于授权的问题。有人可以告诉我如何解决这个问题吗?
提前致谢
解决方案
推荐阅读
- python - 为什么 reshape(4,2) 不同于 reshape(2,-1).T 对于 2x2x2 矩阵
- python - 如何从python中的两个二维列表创建元组的二维列表?
- string - 如何在 Rust 中将字符串转换为向量?
- vue.js - 在 vue.js 实例化之前等待 quasar.dev 引导文件中的代码执行
- c++ - 如何仅在某些情况下选择性地发出 QTextTexid::textChanged 信号?
- python - 使用三个标准从 sqlite 表中选择行
- c - 定义变量时如何避免 GNU Make 和 shell 解开逗号和撇号
- javascript - 将原型传递给对象的正确方法
- android - “assembleDebug”构建失败并出现异常
- reactjs - 更新材料ui中的列表项?