1

これは私を夢中にさせています-なぜそれがうまくいかないのかわかりません!

Google スクリプトに myPage.html と myCode.gs の 2 つのファイルがあります。HTML ファイルを Web アプリとしてデプロイしました。送信ボタンの onclick イベントで myCode.gs ファイルから emailTech 関数をトリガーしたいのですが、うまくいきません! ファイルから関数を直接実行すると、正常に動作します。

数時間調査して追加しようとしまし<script type="text/javascript" src="myCode.gs"></script>たが、Web アプリを更新するとエラーが発生します。onClick イベントで関数をonClick= "google.script.run.emailTech()"andとして呼び出してみましたonClick= "emailTech()"が、どちらも機能しません。また、ヘッダーの script タグに emailTech 関数をロードしようとしましたが、それも機能しませんでした。私は何が欠けていますか?助けてください!

myPage.html ファイル:

    <script type="text/javascript"></script>
    <body>
    <input type="submit" onclick="emailTech();" value="Submit" />
    </body>

myCode.gs ファイル:

    function doGet() {
  return HtmlService.createHtmlOutputFromFile('myPage');
}

function emailTech(){

  Logger.log("is this firing?");
  var message = "This is the email message";
  MailApp.sendEmail("XYZ@abc.com", "This is the subject", message );

}
4

2 に答える 2

2

あなたは実際にこれで順調に進んでいました:

<script type="text/javascript"></script>
<body>
<input type="button" onclick="emailTech();" value="Submit" />
</body>

を使用しないでくださいsubmit。を使用しbuttonます。送信と onclick ハンドラーのセマンティクスは少し奇妙で (HtmlService サンドボックスのためだけでなく、一般的にも)、google.script.run ではうまく機能しません。これは、HtmlService ユーザー ガイドに記載されています。

「この手法は通常の送信ボタンでは使用できません」

于 2013-05-09T05:17:20.613 に答える