.withUserObject()に渡した引数はサーバに送られず
成功/失敗の第2引数に渡されるようなので
リファレンスのコードを改造して this と 文字列を渡して試した
以下のようなボタンをクリックした時
そのボタンのvalueに.gsのコードからの戻り値と渡された文字列を入れる
というコードです
コード.gs
function doGet() { return HtmlService.createHtmlOutputFromFile("index"); } |
意訳この機能がやること 指定したHTMLファイルを表示する |
index.html
<!DOCTYPE html> <html> <body> <input type="button" id="bt" value="click me"> <script> var bt = document.getElementById("bt") bt.onclick = bt_clicked; function bt_clicked() { google.script.run .withSuccessHandler(updateButton) .withUserObject([this, "world"]) .get_value(); } function updateButton(value, array) { array[0].value = value + " " + array[1]; } </script> </body> </html> |
意訳ボタン idがbtの要素を取得して クリックされたらbt_clickedを実行する この機能がやること .gsファイルのコードを実行する 成功したらonSuccessを実行する サーバには送らずに第2引数で渡す .gsで実行するコードはget_value() この機能がやること arrayの0番目はthisが渡されているので押されたボタン自身で、そのボタンのvalueにget_value()の戻り値 + " " + arrayの1番目である worldを入れる |
参考
Class google.script.run (Client-side API)
https://developers.google.com/apps-script/guides/html/reference/run
Class google.script.run (Client-side API)
https://developers.google.com/apps-script/guides/html/reference/run