Google apps script 谷歌应用程序脚本客户端到服务器

Google apps script 谷歌应用程序脚本客户端到服务器,google-apps-script,Google Apps Script,当我可以将此代码作为web应用程序运行时,此代码无法正常工作。首先,我将此程序部署为web应用程序,然后当我运行URL时,它工作正常,但当我提交一些输入时,我的程序日志显示为“null” 我的计划是: 代码.gs function doGet(e) { Logger.log(e.parameter); return HtmlService.createHtmlOutputFromFile("page"); } function userClicked(name){ Logger.log(

当我可以将此代码作为web应用程序运行时,此代码无法正常工作。首先,我将此程序部署为web应用程序,然后当我运行URL时,它工作正常,但当我提交一些输入时,我的程序日志显示为“null”

我的计划是:

代码.gs

function doGet(e) {
 Logger.log(e.parameter);
 return HtmlService.createHtmlOutputFromFile("page");
}

function userClicked(name){
 Logger.log(name);
}
page.html

<!DOCTYPE html>
<html>
 <head>
  <base target="_top">
 </head>
 <body>
  <input type="text" id="username">
  <button id="btn">Submit</button>

 </body>

 <script>
  document.getElementById("btn").addEventListener("click", doStuff);
  function doStuff() {
   var uname = document.getElementById("username").value;
   google.script.run.userClicked(uname);
   document.getElementById("username").value="";
  }
 </script>
</html>

提交
document.getElementById(“btn”)。addEventListener(“单击”,doStuff);
函数doStuff(){
var uname=document.getElementById(“用户名”).value;
google.script.run.userClicked(uname);
document.getElementById(“用户名”).value=“”;
}
这项工作:

问题是你的javascript放错地方了。它是在身体之后,而不是在身体里。所以我只是移动了
标签,现在它可以正常工作了

function showMyDiaog() {
  const html='<!DOCTYPE html><html> <head>  <base target="_top"> </head> <body>  <input type="text" id="username">  <button id="btn">Submit</button> <script>  document.getElementById("btn").addEventListener("click",doStuff);  function doStuff() {   var uname = document.getElementById("username").value;   google.script.run.userClicked(uname);   document.getElementById("username").value="";  } </script></body></html>';
  SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(html), "Test")
}

function userClicked(name){
 Logger.log(name);
}

function doGet(e) {
  Logger.log(JSON.stringify(e));
  const html='<!DOCTYPE html><html> <head>  <base target="_top"> </head> <body>  <input type="text" id="username">  <button id="btn">Submit</button> <script>  document.getElementById("btn").addEventListener("click",doStuff);  function doStuff() {   var uname = document.getElementById("username").value;   google.script.run.userClicked(uname);   document.getElementById("username").value="";  } </script></body></html>';
  return HtmlService.createHtmlOutput(html);
}
函数showMyDiaog(){
const html='Submit document.getElementById(“btn”).addEventListener(“click”,doStuff);function doStuff(){var uname=document.getElementById(“username”).value;google.script.run.userClicked(uname);document.getElementById(“username”).value=”“;};
SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(html),“测试”)
}
函数userClicked(名称){
Logger.log(名称);
}
函数doGet(e){
Logger.log(JSON.stringify(e));
const html='Submit document.getElementById(“btn”).addEventListener(“click”,doStuff);function doStuff(){var uname=document.getElementById(“username”).value;google.script.run.userClicked(uname);document.getElementById(“username”).value=”“;};
返回HtmlService.createHtmlOutput(html);
}

使用
google.script.run.userClicked(“Hello!”)进行测试命令。
function showMyDiaog() {
  const html='<!DOCTYPE html><html> <head>  <base target="_top"> </head> <body>  <input type="text" id="username">  <button id="btn">Submit</button> <script>  document.getElementById("btn").addEventListener("click",doStuff);  function doStuff() {   var uname = document.getElementById("username").value;   google.script.run.userClicked(uname);   document.getElementById("username").value="";  } </script></body></html>';
  SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(html), "Test")
}

function userClicked(name){
 Logger.log(name);
}

function doGet(e) {
  Logger.log(JSON.stringify(e));
  const html='<!DOCTYPE html><html> <head>  <base target="_top"> </head> <body>  <input type="text" id="username">  <button id="btn">Submit</button> <script>  document.getElementById("btn").addEventListener("click",doStuff);  function doStuff() {   var uname = document.getElementById("username").value;   google.script.run.userClicked(uname);   document.getElementById("username").value="";  } </script></body></html>';
  return HtmlService.createHtmlOutput(html);
}