Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用包含javascript django的html模板发送电子邮件?_Javascript_Django_Django Templates_Django Email - Fatal编程技术网

如何使用包含javascript django的html模板发送电子邮件?

如何使用包含javascript django的html模板发送电子邮件?,javascript,django,django-templates,django-email,Javascript,Django,Django Templates,Django Email,我有一个从django呈现特定日期时间字符串的电子邮件模板。我想根据用户的时区渲染这个时间。为了解决这个问题,我选择了使用momentjs,但是有一次,模板中的javascript似乎没有运行,任何用javascript包装的东西都没有出现在电子邮件中。基于此回答,电子邮件客户端不包含外部css,我假设javascript也存在同样的问题,我将如何使其得到认可。来扩展@IainShelvington所说的内容,并回答 @oma0256 ... 如何确定用户的时区 。。。下面是如何在生成电子邮件之

我有一个从django呈现特定日期时间字符串的电子邮件模板。我想根据用户的时区渲染这个时间。为了解决这个问题,我选择了使用
momentjs
,但是有一次,模板中的javascript似乎没有运行,任何用javascript包装的东西都没有出现在电子邮件中。基于此回答,电子邮件客户端不包含外部css,我假设javascript也存在同样的问题,我将如何使其得到认可。

来扩展@IainShelvington所说的内容,并回答

@oma0256 ... 如何确定用户的时区

。。。下面是如何在生成电子邮件之前通过JavaScript(在浏览器中)获取时区偏移量

const timezone = (new Date).getTimezoneOffset() / 60;
。。。再次注意,这将不会在电子邮件中运行,而是应该在从服务使用的任何模板生成电子邮件时使用

关于问题的第二部分

@oma0256 ... 例如,根据他们的电子邮件

。。。但是,如果幸运的话,这些信息将在电子邮件头中,那么这些东西(很像任何其他客户端提供的数据)是不可信的

归属

电子邮件客户端不会加载或运行任何JS。在发送电子邮件之前,您的应用程序需要知道用户的时区,并使用该时区呈现电子邮件。您可以使用此答案中指定的时区,或者这仅适用于css。这些软件包将css转换为生成的HTML电子邮件上的内联
样式
属性。体面的电子邮件客户端永远不会支持运行附加到电子邮件的JS哦。。。好的,谢谢@iainshelvington指定原因:JS可能包含恶意代码,即安全风险