Как получить данные из пользовательского диалогового окна в Google App Script? - PullRequest
0 голосов
/ 21 октября 2018

Я создал Настраиваемое диалоговое окно в электронной таблице Google с использованием скрипта Google App, который выглядит следующим образом:

enter image description here

Как сделатьЯ получаю данные из окна в мою таблицу.

Вот мой HTML-код:

<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
  </head>
  <body>

<form action="google.script.run.testing143()">
  Task Number:<br>
  <input type="text" name="taskNumber" value="">
  <br><br>
   Task Date:<br>
  <input type="text" name="taskDate" value="">
  <br><br>
   Customer Name:<br>
  <input type="text" name="customerName" value="">
  <br><br>
   Customer Site:<br>
  <input type="text" name="customerSite" value="">
  <br><br>
  <select>
  <option value="status">Status</option>
  <option value="complete">Complete</option>
  <option value="scheduled">Scheduled</option>
  <option value="reschedule">Reschedule</option>
  </select>
  <br><br>
   Status Date:<br>
  <input type="text" name="statusDAte" value="">
  <br><br>
   Location:<br>
  <input type="text" name="location" value="">
  <br><br>
   Description:<br>
  <input type="text" name="description" value="">
  <br><br>
  <input type="submit" value="Submit">
</form> 

  <script>
  function testing143(){
  Logger.log('With Success')  ///Doesn't work
  var lmnt = document.getElementByName('usrname'); //Wrong

  }
  </script>
  </body>
</html>

Когда я нажимаю «отправить», появляется ошибка 400.Я могу создать функцию, которая принимает данные в качестве параметра, например:

function getNewTask(number,date,status...) 

Могу ли я использовать document.getElement?Если так, то как это сделать?

Ваша помощь искренне ценится!

1 Ответ

0 голосов
/ 21 октября 2018

Я взял ваш код и изменил для работы.

В Code.gs

function testing143(obj) {
  Logger.log(obj);
  return "hello";
}

В HTML-файле

<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
  </head>
  <body>

<form id="myForm">
  Task Number:<br>
  <input type="text" name="taskNumber" value="">
  <br><br>
   Task Date:<br>
  <input type="text" name="taskDate" value="">
  <br><br>
   Customer Name:<br>
  <input type="text" name="customerName" value="">
  <br><br>
   Customer Site:<br>
  <input type="text" name="customerSite" value="">
  <br><br>
  <select name="status">
  <option value="status">Status</option>
  <option value="complete">Complete</option>
  <option value="scheduled">Scheduled</option>
  <option value="reschedule">Reschedule</option>
  </select>
  <br><br>
   Status Date:<br>
  <input type="text" name="statusDate" value="">
  <br><br>
   Location:<br>
  <input type="text" name="location" value="">
  <br><br>
   Description:<br>
  <input type="text" name="description" value="">
  <br><br>
  <input type="button" value="Submit" onclick="testing143()">
</form> 

  <script>
  function success(msg) {
    alert(msg);
  }

  function testing143(){
    var form = document.getElementById("myForm").elements;
    var obj ={};
    for(var i = 0 ; i < form.length ; i++){
        var item = form.item(i);
        obj[item.name] = item.value;
    }
    google.script.run.withSuccessHandler(success).testing143(obj);
  }
  </script>
  </body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...