0

私はこれを非常にうまく機能させています:

var theForm = HtmlService.createTemplateFromFile('aForm').evaluate();
var theSpreadsheet = SpreadsheetApp.getActiveSpreadsheet();

theSpreadsheet.show(theForm);

ユーザーがデータを送信したら、「theForm」を閉じます。スプレッドシートにunShow()またはhide()メソッドのようなものはありますか?HtmlOutputのharikiri()メソッド?

理想的には、送信されたデータを保存し、スプレッドシートを更新して、show()を再度呼び出すreShow()コマンドが必要です。

これらのことを行う方法が見つからなかったので、送信ボタンを無効にするだけです。うーん!

どんな提案でも大歓迎です。

更新(2012/08/28): この呼び出しを使用して、HTMLフォームから最初に開いた「theForm」と同じコードにコールバックしていることを述べておく必要があります...

google.script.run.recordTheForm(jsonTheForm);

google.script.runだと正しく思いますか。*()呼び出しは、以前に設定された変数値を認識していませんか?

4

2 に答える 2

1

HtmlServiceにはapp.close()に相当するものがありません...これは見落としであり、仕様によるものではありません。修正します。

編集:クライアント側のJavaScriptコード内から(のようなサーバーからではなくapp.close()、HtmlServiceコード自体内から)呼び出すことができるようになりましたgoogle.script.host.closeDialog()

于 2012-10-04T13:56:51.923 に答える
0

これを呼んでください:

theForm.close();
SpreadsheetApp.flush();
theSpreadsheet.show(theForm);

幸運を、

トーマス・ヴァン・ラタム

于 2012-09-28T05:24:25.400 に答える