簡體   English   中英

無法將 InputBox 字符串值從 HTML 傳遞到 Google Apps 腳本

[英]Cannot Pass InputBox String value From HTML To Google Apps Script

我為接受用戶輸入的 Google 文檔創建了一個側邊欄。 我想使用收集到的數據來更新文檔上的某些字段,但現在,我只是嘗試通過警報在屏幕上顯示收集到的數據,以測試我的代碼是否正常工作。 不幸的是,我被卡住了,不確定我做錯了什么。

我遇到了兩個問題,但由於我對應用程序腳本和整個編碼的了解有限,我似乎無法解決我的問題。 我遇到的問題是,1)我的 eventListener 可能沒有被觸發,2)我似乎無法訪問從輸入框中收集的數據。

有人可以幫我解決這個問題嗎? 幾天來我一直在論壇中尋找答案,但同樣,我的知識非常有限,所以我可能已經多次遇到答案,但就是不明白。 我使用的代碼如下,我的文檔鏈接在這里

應用腳本代碼:

function onOpen() {
  // Add a custom menu to the document.
  var ui = DocumentApp.getUi(); // Or SpreadsheetApp or SlidesApp or FormApp.
  ui.createMenu('Menu')
      .addItem('Sidebar', 'showSidebar')
      .addToUi();
}

function showSidebar() {
  // Create HTML template from a file
  var html = HtmlService.createHtmlOutputFromFile('userform')
       .setTitle("TEST FORM")
       .setWidth(300);
  DocumentApp.getUi()
       .showSidebar(html);
}


function appendData(data) {
   DocumentApp.getUi().alert(data.f + ' ' + data.l);
}

HTML代碼

<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
  </head>
  <body>
    <div class="container">
             <div>
                <input id="firstName" type="text" name="firstName" placeholder="Enter first name">
             </div>

             <div>
                <input id="lastName" type="text" name="lastName" placeholder="Enter last name">
             </div>

             <div>
                <input type="button" value="SUBMIT" onClick="submitData();"/>
             </div>
   </div> <!-- End of container div -->

   <script>


   function submitData() { 

      var fName = document.getElementById('firstName').value;
      var lName = document.getElementById('lastName').value;
      var data {
         f: fName,
         l: lName
      };

      google.script.run.appendData(data);
   }
   </script>
  </body>
</html>

嘗試這個:

function submitData() { 
  var first=document.getElementById('firstname').value;
  var last=document.getElementById('lastname').value;
  var data={f:first,l:last};
  google.script.run.appendData(data);
}

為簡單起見,您還可以將此<button id="btn">Submit</button>更改為此<input type="button" value="Submit" onClick="submitData();" /> <input type="button" value="Submit" onClick="submitData();" />

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM