我尝试通过将过滤视图的网址传递到侧边栏中显示的超链接来解决Google Spreahsheet过滤视图的API缺失问题。
重要的是:我希望过滤器视图网址在同一窗口中打开 ,从而替换电子表格。超链接目标应为_self
function listFilterViews(){
var uiInstance = UiApp.createApplication()
.setTitle('Teacher Views');
var panel = uiInstance.createVerticalPanel();
panel.setSpacing(5)
var scroll = uiInstance.createScrollPanel();
scroll.setHeight("100%")
var url = "https://docs.google.com/blablabla"
var link = uiInstance.createAnchor("click me", url)
link.setTarget("_self")
panel.add(link);
scroll.add(panel)
uiInstance.add(scroll);
SpreadsheetApp.getUi().showSidebar(uiInstance);
}
但是,URL不会在预期的同一窗口中打开,而是在其他窗口中打开。我该如何解决这个问题?
答案 0 :(得分:0)
“(将目标设置为_self)仅在应用程序显示为独立服务时才有效。在对话框中调用时无效,例如在Google电子表格中。”
Apps脚本故意阻止脚本切换当前窗口的视图,作为安全措施。