私はプログラミングが初めてで、Google-apps-scriptを使用してjQueryでいくつかのボタンを接続しようとしています。スプレッド シートにメニューを追加して、HtmlService からダイアログ ボックスを開きます。
ダイアログ ボックスには 2 つのボタンがあり、1 つはダイアログを閉じ、もう 1 つはサーバー機能を実行します。現時点では、「hello world をセル a1 に書き込むだけです。「閉じる」ボタンは完全に機能しますが、「更新」は機能しないようです。クライアント側をデバッグする方法が正確にはわかりません。
<script>
  $(document).ready(function(){
      $("#update").click(function (){
        var params = {}
        params.url = $("#url").val()
        params.owner = $("#owner").val()
        params.type = type
        google.script.run.update(params);
      });
      $("#close").click(function(){
      // This one works. why not the "update" button???
        google.script.host.close()
      })
  })
 </script>
 <title>AJAXtabs.html</title>
  </head>
<body>
<div id="content">
  <table border="1">
    <tr>
      <th><?= type ?>URL</th>
      <td><input type="text" id="url" name="url"></td>
    </tr>
    <tr>
      <th>New Owner email</th>
      <td><input type="text" id="ownerEmail" name="ownerEmail"></td>
    </tr>
    <tr>
      <td colspan="2" id="buttonRow" ><button id="update" type="button" >Update</button><button id="close" type="button">Close</button></td>
    </tr>
  </table>
</div>
<div id="message">
</div>
</body>
</html>
Code.gs の抜粋
function update(params){
      var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
      var row = sheet.getLastRow()
      var col = sheet.getLastColumn()
      sheet.getRange('a1').setValue('Hello world!!')
    }
    function onOpen() {
    var ss = SpreadsheetApp.getActiveSpreadsheet();
    var menuEntries = [];
   // When the user clicks on "addMenuExample" then "Menu Entry 1", the function function1 is
   // executed.
   menuEntries.push({name: "Set file", functionName: "fileUi"});
  menuEntries.push(null); // line separator
  menuEntries.push({name: "Set Folder", functionName: "folderUi"});
  ss.addMenu("Setters", menuEntries);
}
   function fileUi(){
 var htmlApp = HtmlService.createTemplateFromFile('View template')
 htmlApp.type = 'File';
   SpreadsheetApp.getActiveSpreadsheet().show(htmlApp.evaluate().setHeight(300).setTitle('Chan ge Owner'));
 }
   function folderUi(){
 var htmlApp = HtmlService.createTemplateFromFile('View template')
  htmlApp.type = 'Folder'
   SpreadsheetApp.getActiveSpreadsheet().show(htmlApp.evaluate());
}