LoginSignup
0
1

More than 3 years have passed since last update.

[Google Apps Script] ブラウザからの入力値をもとにGmailの下書きを作成する

Last updated at Posted at 2020-03-14

概要

以下の記事の続編として、ブラウザからメールのタイトル、To、Cc、本文を入力して、その値をmailの下書きに反映させるプログラムを作成しました。

[Google Apps Script] エクセルをGmailの下書きに圧縮して添付する

動作結果

  1. ブラウザから、メールのタイトル、To、Cc、本文を入力し、実行をクリックします。

キャプチャ3.PNG

  1. すると、gmailの下書きに入力した値が反映された下書きが作成されます。 キャプチャ4.PNG

ソースコード

Standalone ScriptのGASプロジェクトで、以下の2つのプログラムを作ります。

index.html
<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
  </head>
  <body>
    <h1>メール下書き作成</h1>
    <form id='myForm' onsubmit="javascript:return false;">
      タイトル:<input type="text" name="title"> <br>
      To:<input type="text" name="To"> <br>
      Cc:<input type="text" name="Cc"> <br>
      mailBody: <br>
      <textarea name="mailbody"></textarea>

      <input type='button' value='実行' onclick="runGAS()">
    </form>
  </body>

  <script>
  function onSuccess(res){
    console.log("success")
  }

  function runGAS(){
    //各入力をdocument.querySlector()で取得します。
    var title = document.querySelector('input[name="title"]').value;
    var to = document.querySelector('input[name="To"]').value;
    var cc = document.querySelector('input[name="Cc"]').value;
    var body = document.querySelector('textarea[name="mailbody"]').value;

    // onSuccess()が成功した場合、draft2.jsのmyFunction()を実行します。
    google.script.run.withSuccessHandler(onSuccess).myFunction(title, to, cc, body);

  }
  </script>
</html>
make_draft2.js
function myFunction (title, to, cc, body) {
  var mailTo = to;
  var mailCc = cc;

  var mailBody = body;
  var mailTitle = title;

  //受け取った引数をもとにgmailの下書きを作成します。
  GmailApp.createDraft(mailTo, mailTitle, mailBody,  {cc: mailCc});
}
0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1