我第一次在Google Apps脚本中实现了一个treeView并遇到了麻烦。
选择treeItem
时,此处理程序会被激活tree.addSelectionHandler(app.createServerSelectionHandler("restClick"));
我原本希望能够在处理程序中识别所选项目
function restClick(e) {
var app = UiApp.getActiveApplication();
Logger.log(e.parameter.source);
var tree = app.getElementById(e.parameter.source);
Logger.log(tree.getId());
return app;
}
上面的代码正确地标识了树对象 - 但是我无法弄清楚如何获取selectedItem - 没有合适的方法,例如getSelectedItem(),并且没有(e)的有用属性可以帮助
谢谢。
答案 0 :(得分:4)
这是known issue。您应该点击链接并为此问题加注星标以跟踪更新和投票类型。关于问题评论,如果这对您来说非常重要,那么可以解释一些有点麻烦的解决方法。
“树对象”应该像Apps脚本上的所有其他小部件一样工作,具有setName
方法,我们可以在其中获取处理程序事件参数项目名称或索引(在将树添加为回调元素之后)处理程序使用addCallbackElement
)例如
tree.setName('mytree').addSelectionHandler(app.createServerSelectionHandler("restClick").
addCallbackElement(tree));
但是这不起作用,正如错误报告中所告知的那样。