0

我正在使用带有用于其 UI 的 HTML 文件的 Google Apps 脚本制作 Google 表单插件。我几乎已经采用了快速入门并更改了一些内容。

这是我第一次做任何类型的 HTML 令人尴尬。

在我的 UI 中,我有一个按钮:

<div class="sidebar branding-below">
      <form>
        <div class="block" id="button-bar">
          <button id="deactivate" class="action" onclick="deactivatePressed()">Deactivate</button><br><br>
          <div id="deactivation-confirmation"></div>
        </div>
      </form>
    </div>

这是调用实际工作的谷歌应用程序脚本的相应javascript:

function deactivatePressed() {
    google.script.run.addTrigger(false);
    document.getElementById('deactivation-confirmation').innerHTML = "Success!";
}

按钮出现,调用函数成功。

问题是按下此按钮还会打开一个新的空白选项卡,指向特定链接,如下所示:

https://n-it2esyxcfj91uyg675645seyxh42jvgbfydr5e6u56y-0lu-script.googleusercontent.com/userCodeAppPanel?

在控制台中,它运行一条错误消息,内容如下:

不安全的 JavaScript 尝试从 URL 为“ https://n-it2esyxcfj91uyg675645seyxh42jvgbfydr5e6u56y-0lu-script.googleusercontent.com/userCodeAppPanel ”的框架中为来源为“ https://docs.google.com ”的框架启动导航。试图导航顶级窗口的框架是沙盒的,但未设置“allow-top-navigation”或“allow-top-navigation-by-user-activation”的标志。

如何确保脚本运行时没有打开新选项卡?

我确定它在 HTML/js 中并且不是 Google Apps 脚本代码,因为我注释掉了 Google Apps 脚本函数的主体,但问题仍然存在。

4

1 回答 1

0

这是因为按钮在<form>标签内。

将其更改为:

<div class="sidebar branding-below">
   <div class="block" id="button-bar">
      <button id="deactivate" class="action" onclick="deactivatePressed()">Deactivate</button><br><br>
      <div id="deactivation-confirmation"></div>
   </div>
</div>
于 2018-07-13T14:33:10.377 回答