【问题标题】:Accessing HTML script variable from google script从谷歌脚本访问 HTML 脚本变量
【发布时间】:2018-12-17 21:30:26
【问题描述】:

我正在尝试在 google 表格中组合一个选择器。 将文件上传到谷歌驱动器后,我希望将网址发布在电子表格的当前单元格中。

这是我在 html 文件中的 pickerCallback:

var message;

function pickerCallback(data) {
    var action = data[google.picker.Response.ACTION];
    if (action == google.picker.Action.PICKED) {
        var doc = data[google.picker.Response.DOCUMENTS][0];
        var id = 'https://drive.google.com/open?id=' + doc[google.picker.Document.ID];

        google.script.run.accessSpreadsheet(); 

    } message = id;
    document.getElementById('result').innerHTML = message;
}

这将返回选择器对话框中的 url。

我的 accessSpreadsheet 函数如下所示,位于 google 脚本文件中:

function accessSpreadsheet() {
     var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
     var currentCell = sheet.getCurrentCell();
     currentCell.setValue(message);
     return spreadsheet;
}

函数运行但无法定义消息。有没有办法从谷歌脚本函数访问 html 文件中函数中定义的变量?或者还有其他更好的方法吗?

【问题讨论】:

标签: javascript google-apps-script google-sheets google-picker


【解决方案1】:

解决办法:

将字符串id 从客户端传递到服务器。

片段:

google.script.run.accessSpreadsheet(id); 

function accessSpreadsheet(id) {

 currentCell.setValue(id);

参考:

Client-Server communication

【讨论】:

  • 谢谢,成功了!有什么地方可以让我了解更多吗?
  • @PhilipB 添加了参考。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-30
  • 1970-01-01
  • 2016-10-08
相关资源
最近更新 更多