繁体   English   中英

如何在 web 应用程序的谷歌应用程序脚本中调用 prompt() 或 alert()?

[英]How to call prompt() or alert() in google app script for web apps?

我正在尝试通过 Google appscript 开发 web 服务,并尝试在代码中调用 ui.prompt() 或 Broswer.inputBox() function。 然而,这些方法都没有奏效。 这两项服务的文档似乎仅限于 SpreadsheetApp class。 那么有什么方法可以从服务器端调用 prompt() 或者有什么方法可以解决这个问题?

谢谢你。

在部署为 web 应用程序的 Google Apps 脚本上,这是不可能的,而是使用 HTML/CSS/JavaScript(包括库/框架)

当您使用SpreadsheetApp.getUi()时,您可以访问 API,它允许与 Google 表格 web 界面集成。

或者,当您将 Apps 脚本项目部署为 web 应用程序时,您负责使用HTMLService class 提供 UI。 除了参考文档之外,还有介绍性指南最佳实践列表

为了回答您关于显示警报的问题,以下是最佳实践文档中第一个示例的修改版本:

代码.gs

function doGet(request) {
  return HtmlService.createTemplateFromFile('Page')
      .evaluate();
}

function include(filename) {
  return HtmlService.createHtmlOutputFromFile(filename)
      .getContent();
}

页.html

<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
  </head>
  <body>
    <h1>Welcome</h1>
    <p>Please enjoy this helpful script.</p>
    <?!= include('JavaScript'); ?>
  </body>
</html>

Javascript.html

<script>
window.addEventListener('load', function() {
  alert('Page is loaded');
});
</script>

如果您使用这些文件填充 Apps 脚本项目,将其部署为 web 应用程序并访问生成的 URL,Javascript 将在浏览器中执行,并显示警报对话框。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM