Скрипт Google Apps не принимает форматирование HTML в шаблоне - PullRequest
1 голос
/ 05 ноября 2019

Я пытаюсь очистить свой код и решил создать шаблон для электронных писем, а не содержать его в теле кода. Упрощенная версия моего кода выглядит следующим образом:

    function emailTest() {

      var templ = HtmlService.createTemplateFromFile('testSLTMail');

        templ.name = "Fazila";
        templ.student = "Student1";
        templ.oldClass = "classA";
        templ.newClass = "classB";
        templ.sltName = "Fazila";
        templ.changeReason = "testing";

      var message = templ.evaluate().getContent();

      GmailApp.sendEmail('f.yunus@littleilford.org','Test Email', message);

И мой шаблон HTML выглядит следующим образом:

<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
  </head>
  <body> 

    <p> Dear <?= sltName ?> </p>
    <p> <?= name ?> has requested a change to the following student's timetable: </p>
    <p><center><?= student ?>'s timetable from <strong><?= oldClass ?></strong> to <strong><?= newClass ?></strong></center></p>
    <p> The reason for this change request is: </p>
    <p><center><?= changeReason ?></center></p>
    <p> Please confirm this request is authorised below. </p>
    <p> Kind regards </p>
    <p> Fazila </p>

  </body>
</html>

Однако, когда я получаю электронное письмо, форматирование HTML не выполняетсячерез письмо, которое я получаю, выглядит так:

<p> Dear Fazila </p>
<p> Fazila has requested a change to the following student's timetable: </p>
<p><center>Student1's timetable from <strong>classA</strong> to <strong>classB</strong></center></p>
<p> The reason for this change request is: </p>
<p><center>testing</center></p>
<p> Please confirm this request is authorised below. </p>
<p> Kind regards </p>
<p> Fazila </p>

Я, очевидно, пропускаю шаг где-нибудь, который сообщает скрипту приложенийприменить форматирование HTML, но не вижу, где. Есть идеи?

Спасибо

Ответы [ 2 ]

2 голосов
/ 05 ноября 2019

Используйте этот конструктор электронной почты:

  MailApp.sendEmail({
    to: "f.yunus@littleilford.org",
    subject: "test",
    htmlBody: message
});

Работает!

1 голос
/ 05 ноября 2019

рассмотрите возможность использования опции htmlBody:

GmailApp.sendEmail('f.yunus@littleilford.org','Test Email', { htmlBody: message });

задокументировано здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...