Клиент скрипта Google Apps на сервер - PullRequest
0 голосов
/ 05 мая 2020
• 1000 me "null".
[20-05-05 06:48:54:864 PDT] null

Моя программа:

code.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>

1 Ответ

1 голос
/ 05 мая 2020

Это работает:

Проблема была в том, что ваш javascript был не в том месте. Он пришел скорее за телом, чем за телом. Я просто переместил тег </body>, и теперь он работает нормально.

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);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...