サーバー側の主な処理およびモーダルダイアログをスプレッドシートに表示させる処理はコンテナバインドスクリプトで実装済みなのですが、
サーバー側の処理が完了次第自動的にモーダルダイアログを閉じさせる良いコードが浮かばず困っている状況です。
以下のいずれかの手段が実現可能でしたらコードをご教示頂けませんでしょうか。
上記の期待動作が叶うのであれば、その他の手段でも構いません。
・サーバー側からクライアント側モーダルの閉じるボタンに対してonClickイベントを発生させる
→クライアント側でメソッドgoogle.script.host.close()を実行させる
・サーバー側でクライアント側スクリプトgoogle.script.host.close()を実行させるコード
どうぞよろしくお願い致します。
GAS
1function main(){ 2 modalOpen(); 3 syori1(); 4 syori2(); 5 modalClose(); 6} 7 8function modalOpen(){ 9 var page = HtmlService.createTemplateFromFile("notification").evaluate(); 10 SpreadsheetApp.getUi().showModalDialog(page, "処理中です"); 11} 12 13function syori1(){ 14 //モーダルを動的にする内容は含まれない為、省略します。 15} 16 17function syori2(){ 18 //モーダルを動的にする内容は含まれない為、省略します。 19} 20 21function modalClose(){ 22 //ここにmodalOpenで開いたモーダルダイアログを閉じる処理を書きたい 23}
HTMLファイル名:notification
HTML
1 2<!DOCTYPE html> 3<html> 4 <head> 5 <base target="_top"> 6 </head> 7 <body> 8 完了までお待ちください。 9 </body> 10</html>
あなたの回答
tips
プレビュー