Google Script可在与电子表格相同的窗口中打开网址

时间:2014-11-06 04:33:35

标签: hyperlink google-apps-script google-sheets

我尝试通过将过滤视图的网址传递到侧边栏中显示的超链接来解决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不会在预期的同一窗口中打开,而是在其他窗口中打开。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

根据setTarget documentation

“(将目标设置为_self)仅在应用程序显示为独立服务时才有效。在对话框中调用时无效,例如在Google电子表格中。”

Apps脚本故意阻止脚本切换当前窗口的视图,作为安全措施。