【问题标题】:Google Apps onEdit Event - event.source is undefined forGoogle Apps onEdit 事件 - event.source 未定义
【发布时间】:2012-04-23 16:02:31
【问题描述】:

Google Docs 允许编写脚本。

当单元格内容与特定单词匹配时,我正在尝试更改单元格的颜色。我的问题是 onEdit 函数没有按照这里指定的方式工作:https://developers.google.com/apps-script/guide_events#Simple

每当我尝试使用 event.source 谷歌应用程序时都会抛出错误:"source of undefined"

function onEdit(event)
{
  Browser.msgBox(event.source.getActiveSheet());
}

当然这是非常基本的,我在这里做错了吗?

【问题讨论】:

  • 当我尝试你的代码时,它工作正常。如果您的文件中的代码不止这些,您也可以添加它吗?另外,你是如何运行这个的?对于 onEdit 函数,您应该通过编辑电子表格中的单元格来进行测试,而不是通过脚本编辑器运行它,因为如果您从脚本编辑器运行它,它会丢失触发事件的上下文。
  • 好吧好吧。我显然误解了界面。我真傻。我相信从脚本编辑器运行脚本基本上会将脚本添加到电子表格沙箱中。谢谢!你可以回答我的问题,然后就可以回答了:)

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


【解决方案1】:

您的代码运行良好,但对于 onEdit() 函数,请确保您通过编辑电子表格中的单元格而不是直接从脚本编辑器运行它们。这些内置的简单事件处理程序需要传入事件的上下文才能正常工作。如果您直接从脚本编辑器运行它们,则不会传入任何事件对象,这就是您收到错误的原因。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-05
    相关资源
    最近更新 更多