前提・実現したいこと
Google Apps Scriptで、スプレッドシートに、モーダルダイアログを利用した勤務シフトの入力表を作成しようとしています。
HTMLServiceを利用し、モーダルダイアログの入力欄を表示することはできました。
しかし、onclickを利用して、ボタンを押すことでサーバー側の関数を動かしたいのですが、上手く動きません。
発生している問題・エラーメッセージ
<button onclick="google.script.run.get_select_date(this.parentNode);">次へ</button> としていますが、該当のボタンを押しても、指定した関数が実行されません。
該当のソースコード
コード.gs
JavaScript
1//カレンダー入力のための日時選択フォームを表示し、HTMLに渡す関数 2function select_date_form(){ 3 var t_html = HtmlService.createHtmlOutputFromFile('select_date'); 4 SpreadsheetApp.getUi().showModalDialog(t_html, "入力日時選択画面"); 5 6} 7//選択された週の値を取得&表示する関数 8function get_select_date(form){ 9 Logger.log("OK1"); 10 var select_week = form.week; 11 var week_v = select_week.value; 12 Browser.msgBox(week_v); 13} 14
select_date.html
HTML
1<!DOCTYPE html> 2<html> 3 <head> 4 <base target="_top"> 5 </head> 6 <body> 7 <form id="date"> 8 <p>シフト入力する日時を1つ選択して下さい!<br> 9 <input type="radio" name="week" value="1"> 第1週<br> 10 <input type="radio" name="week" value="2"> 第2週<br> 11 <input type="radio" name="week" value="3"> 第3週<br> 12 <input type="radio" name="week" value="4"> 第4週<br> 13 </p> 14 15 <button onclick="google.script.run.get_select_date(this.parentNode);">次へ</button> 16 17 </form> 18 </body> 19</html> 20 21
試したこと
https://tonari-it.com/gas-dialog-withsuccesshandler-close/
上記のサイトに書いてあるコードをコピペして、実行してみましたが、onclickに入れてある関数は動きませんでした。
また、HTMLの方に<script></script>を入れて、そこに関数を書いてみましたが、これも上手く動作しませんでした。
補足情報(FW/ツールのバージョンなど)
<button onclick="alert('クリックされました');">次へ</button>
や
<button onclick="google.script.host.close();">次へ</button>
の場合は動作しました。