3

Google ドキュメント フォームを作成し、Google スクリプト ガジェットを作成して、データをフォームのスプレッドシート バックエンドに投稿し、カスタムhtml5確認ページを返しました。

HTMLServiceスクリプト コードでdoPost(e)とを使用doGet(e)し、ガジェットで 2 つの HTML ファイル (フォームと確認 HTML ファイル) も作成しました。

データを正しいスプレッドシートに書き込むガジェット。ただし、ガジェットで作成した正しい確認 HTML ファイルが返されません。Google ドキュメント フォームの一部である確認ページを返しています。doPost私のコードの一部の抜粋を以下に示します。Googleドキュメントの代わりに作成したカスタム確認htmlファイルを返す方法を知っている人はいますか?

function doPost(e) {
  var template = HtmlService.createTemplateFromFile('confirm.html');
  template.entry_0 = e.entry_0;
  template.entry_1 = e.entry_1;
  template.entry_2 = e.entry_2;
  template.entry_3 = e.entry_3;
  template.screenshot = e.parameter.screenshot;
 return template.evaluate();  
}

私の form.html ファイルのフォーム アクション コード行は以下のとおりです。

<form action="<?= "https://docs.google.com/spreadsheet/formResponse?formkey=$mungedformkey" ?>" method="post">
4

1 に答える 1

2

URLに投稿する場合、そのURLが次に何が起こるかを決定します。つまり、doPostが呼び出されることはありません。別の方法として、スクリプトに投稿し(doPostを使用するか、google.script.run post構文を使用する方がよい)、UrlFetchAppを使用してデータをフォームに渡します。次に、フォームの応答を制御できるようになります。

于 2012-10-16T04:44:56.007 に答える