SpreadsheetApp.getActiveSpreadsheet()正在破解脚本 [英] SpreadsheetApp.getActiveSpreadsheet() is breaking script
问题描述
我正在写我的第一个谷歌应用程序脚本。电子表格在 onOpen()
中打开一个侧栏。边栏具有按钮,并且在 SidebarJavaScript.html 中,我拥有该按钮的侦听器。我在调用内部调用了 SpreadsheetApp.getActiveSpreadsheet()
,并且在这行脚本没有执行之后。
可能是错误的吗?
function onScrapeClick(){
//停用按钮
this.disabled = true;
//获取电子表格
var sheet = SpreadsheetApp.getActiveSpreadsheet();
this.innerHTML =点击;
var data = sheet.getDataRange()。getValues();
按钮被禁用,因为 this.disabled = true;
与预期一致,因此lister工作正常。
必须定义获取 .gs
文件中数据的方法,并使用 google.script.run
调用它。
在一些 Code.gs
文件中:
function getSheetData()
{
var sheet = SpreadsheetApp.getActiveSpreadsheet();
var data = sheet.getDataRange()。getValues();
返回数据;
}
而在html脚本中:
函数onScrapeClick(){
//禁用按钮
this.disabled = true;
//获取电子表格
this.innerHTML =Clicked;
google.script.run
.withSuccessHandler(
函数(数据,元素){
//执行数据时执行代码
//接收到的数据(b
$ b $)
.withFailureHandler(
function(msg,element){
//如果数据没有得到,则执行代码ok
})
.getSheetData();
}
I'm writing my 1st google app script. Spreadsheet opens a sidebar in onOpen()
. Sidebar has Button and in SidebarJavaScript.html I have listener to that button. I'm calling SpreadsheetApp.getActiveSpreadsheet()
inside listener and after this line script is not executing.
What could possibly be wrong here?
function onScrapeClick(){
// Disable Button
this.disabled = true;
// Get Spreadsheet
var sheet = SpreadsheetApp.getActiveSpreadsheet();
this.innerHTML ="Clicked";
var data = sheet.getDataRange().getValues();
}
Button is getting disabled as for line this.disabled = true;
as expected so lister is working properly for sure.
You must define the method to get data in a .gs
file and call it with google.script.run
.
In some Code.gs
file:
function getSheetData()
{
var sheet = SpreadsheetApp.getActiveSpreadsheet();
var data = sheet.getDataRange().getValues();
return data;
}
And in the html script:
function onScrapeClick(){
// Disable Button
this.disabled = true;
// Get Spreadsheet
this.innerHTML ="Clicked";
google.script.run
.withSuccessHandler(
function(data, element) {
// code to execute if data was gotten ok
// the received data is in data argument
})
.withFailureHandler(
function(msg, element) {
// code to execute if data was not gotten ok
})
.getSheetData();
}
这篇关于SpreadsheetApp.getActiveSpreadsheet()正在破解脚本的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!