谷歌表侧边栏文本区域到服务器端脚本

时间:2018-08-20 14:16:47

标签: javascript html sidebar

我有一个可以从Google表格发送电子邮件的功能。我想在Google工作表的侧边栏选项中编写电子邮件的主题和正文,然后单击“发送”,并将主题和正文作为变量传递给服务器端函数以发送电子邮件。

我希望我能够清楚地解释我的要求。我几乎没有编程知识,所以请原谅。我在下面有当前的代码,任何改进或修正都将不胜感激。

    function onOpen() {
      var ui = SpreadsheetApp.getUi();
      ui.createMenu('Email')
          .addItem('Remaining Email Quota', 'emailQuota')
          .addSeparator()
          .addItem('Send Email', 'sideBar')
          .addToUi();
    }

function sendEmail(formSubject,formBody){
  var app = SpreadsheetApp;
  var sheet = app.getActiveSheet();
  var lastRow = sheet.getLastRow();

    for (var i = 5; i <=lastRow;i++){

    var currentEmail = sheet.getRange(i,4).getValue();
    var emailConfirm = sheet.getRange(i,1).getValue();

    if(emailConfirm == "Yes"){
    if(currentEmail !=""){
       MailApp.sendEmail(currentEmail, formSubject, formBody);
       }

  } 
    }

}

    function sideBar(){
      var html = HtmlService.createHtmlOutputFromFile('sideBarEmail')
          .setTitle('Email Subject & Body').setSandboxMode(HtmlService.SandboxMode.IFRAME)
          .setWidth(400);
      SpreadsheetApp.getUi() // Or DocumentApp or SlidesApp or FormApp.
          .showSidebar(html);   
    }

下面的HTML部分__________________________________________

>     <base target="_top">
>     <script>
>      function onSuccessSubject(getSubject){   var subject = document.getElementById("formSubject");    }
>       google.script.run.sendEmail();
> 
> </script>   </head>   <body>
> 
> 
> <form>
> 
> <form id="formSubject">
>     <p> Subject:<br>   <input type="text" name="subject" size="36"> </p>
>     </form>
> 
> <p> Body:<br> <textarea name="body" rows="15"
> cols="37"style="Left"></textarea> </p>
> 
> <input type="button" value="Send" onclick =
> "google.script.run.withSuccessHandler(onSuccessSubject).getSubject();"/>
> 
> <input type="button" value="Cancle" onclick="google.script.run
>         .withSuccessHandler(showConfirmation(document.getElementById('subject').value))
>         .processData(document.getElementById('subject').value)" />
> 
> </form>
>     </body> 

0 个答案:

没有答案