【发布时间】:2020-04-15 05:35:37
【问题描述】:
我正在尝试使用以下代码构建一个简单的网络应用程序。但是,当我单击 html 页面上的按钮时,日志仍然显示此会话中没有运行任何功能。我已经部署了最新的代码,但没有结果。我浏览了几个链接,但我无法弄清楚代码有什么问题。
<!DOCTYPE html>
<html>
<head>
<base target="_top">
</head>
<body>
<h1> Hello</h1>
<button id="btn">Calculate</button>
<script>
document.getElementById("btn").addEventListener("click",click_handler);
function click_handler(){
google.script.run.userClicked();
}
</script>
</body>
</html>
function doGet() {
return HtmlService.createHtmlOutputFromFile("page");
}
function userClicked(){
Logger.log("Someone clicked");
}
【问题讨论】:
-
我认为您的脚本有效。但是启用 V8 后,在 Web 应用程序和对话框中,似乎没有记录日志。因此,在这种情况下,例如,当您的脚本从
Logger.log("Someone clicked");修改为return "Someone clicked";以及从google.script.run.userClicked();修改为google.script.run.withSuccessHandler(e => alert(e)).userClicked();时,单击按钮时会打开一个警报。通过这个,您可以检查 Google Apps 脚本的工作情况。当您修改脚本时,请将 Web 应用程序重新部署为新版本。如果这不是您想要的方向,我很抱歉。 -
谢谢,我明白你在说什么。但是当我更新代码以将参数传递给函数 userClicked 时,它似乎没有运行,因为 withSuccessHandler 没有运行
-
感谢您的回复。不幸的是,我无法从
when I updated the code to pass a parameter to the function userClicked了解您的脚本。这是因为我的英语水平不好。我对此深表歉意。为了正确了解您目前的情况,您能提供吗?如果可以,请将其添加到您的问题中。通过这个,我想检查一下。如果您能合作解决您的问题,我很高兴。 -
我终于能够解决这个问题了。其中一个元素值未定义,这导致了整个问题。谢谢!
-
感谢您的回复。我很高兴你的问题得到了解决。很抱歉我的评论对解决您的问题没有帮助。
标签: javascript google-apps-script web-applications