私のスクリプトをアドオンに変換しています。ニーズの 1 つはテンプレートを構成することなので、フィールド ピッカーを起動するサイドバーをプログラムしました。サイドバーにはピッカー用の十分なスペースがないため、サーバー側で次のコードを呼び出して、サイドバーから作成したモーダル ダイアログからピッカーを起動する必要があります。
var html = HtmlService.createHtmlOutputFromFile('TemplatePicker.html')
.setWidth(600).setHeight(425);
SpreadsheetApp.getUi().showModalDialog(html, 'Select the file with the template');
私の問題は、ユーザーがファイルを選択すると、選択したファイルの ID を取得すると、その ID をサイドバーに渡すことができないことです。someJSFunctionOfSidebar(id)
andを呼び出してみparent.someJSFunctionOfSidebar(id)
ましたが、うまくいかなかったので、サーバー側に値を渡してそこからサイドバーをリロードすることでようやく終了しましたが、非常に遅く、結果の効果が醜いです。
私の質問は:
で作成されたモーダル ダイアログからクライアント レベルで値SpreadsheetApp.getUi().showModalDialog
をその親に渡す方法はありますか? おそらくそれは実際にはその親ではなく、それが機能しない理由です。