Отправляйте html-контент по электронной почте и динамически конвертируйте даты UTC по местному времени. - PullRequest
0 голосов
/ 21 июня 2019

У меня есть серверный код, который создает HTML-разметку и отправляет его в виде электронного письма. В содержание этого письма я добавил несколько дат. Нечто похожее на:

Thu, 30 May 2019 08:13:24 GMT

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

<html>
    <body>
        <h1 style="color: #5e9ca0;">Hello, John Doe!</h1>
        <p style="color: #2e6c80;">We kindly ask you to return it no later than: <u><span id="returnDeadline">Fri, 21 Jun 2019 09:27:37 GMT</span></u></p>
    </body>
</html>
<script>
  (function() {
    let returnDeadlineContainer = document.getElementById('returnDeadline');
    returnDeadlineContainer.innerText = (new Date(returnDeadlineContainer.innerText)).toLocaleString();
  })();
</script>

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

Итак, мне было интересно, как я могу достичь этого самым простым способом. Я искал HTML-теги (например, <time>), но, похоже, они не сработали.

...