Javascript Google脚本:将脚本附加到电子表格中动态添加的图像

Javascript Google脚本:将脚本附加到电子表格中动态添加的图像,javascript,google-apps-script,google-sheets,Javascript,Google Apps Script,Google Sheets,我正在用谷歌脚本构建一个基于谷歌电子表格的应用程序。它所做的一件事是输出一组附加到父项的选定项。我希望用户能够通过单击为每行生成的图像来打开这些项目的编辑界面 在GoogleSheets中,您可以右键单击插入的图像以打开上下文菜单并向其附加脚本。Google Script允许您使用assignScript方法将脚本分配给工作表中的图像,但由于某种原因,当您调用该函数时,它会弹出以下错误:“Script function function editContract(){ Logger.log(“合

我正在用谷歌脚本构建一个基于谷歌电子表格的应用程序。它所做的一件事是输出一组附加到父项的选定项。我希望用户能够通过单击为每行生成的图像来打开这些项目的编辑界面

在GoogleSheets中,您可以右键单击插入的图像以打开上下文菜单并向其附加脚本。Google Script允许您使用assignScript方法将脚本分配给工作表中的图像,但由于某种原因,当您调用该函数时,它会弹出以下错误:“Script function function editContract(){ Logger.log(“合同编辑”) }找不到“

这是密码。没什么复杂的

var fileId = '17-6V_HBlSGwHW-_NeLzUo5kizxxrYOjG';
var img = DriveApp.getFileById(fileId).getBlob();
// Insert the image in cell.
searchSheet.insertImage(img, 10, writeRow);    
// now we need to attach a script to that image  
images = searchSheet.getImages(); 
images[images.length - 1].assignScript(editContract);

assignScript(functionName)
的参数是字符串值。我想这就是你的问题所在。所以在你的脚本中,请修改如下

发件人:
  • 在这种情况下,函数的脚本直接放入。这样,当单击创建的按钮时,我认为当单击按钮时,会显示这样的错误消息
致:
  • 请将函数名设置为如上所示的字符串值
参考:

赋值脚本(函数名)的参数是字符串值。我想这就是你的问题所在。所以在你的脚本中,请修改如下

发件人:
  • 在这种情况下,函数的脚本直接放入。这样,当单击创建的按钮时,我认为当单击按钮时,会显示这样的错误消息
致:
  • 请将函数名设置为如上所示的字符串值
参考:

    • 为后代响应:.assignScript中的函数名需要用引号封装。如果能在某个地方将其记录下来,那就太酷了。

      为子孙后代做出响应:.assignScript中的函数名需要用引号进行封装。如果能在某处记录下来,那就太酷了

      images[images.length - 1].assignScript(editContract);
      
      images[images.length - 1].assignScript("editContract");