Spring boot 当呈现为html文本时,内联javascript不会在Thymeleaf模板中处理

Spring boot 当呈现为html文本时,内联javascript不会在Thymeleaf模板中处理,spring-boot,google-visualization,thymeleaf,Spring Boot,Google Visualization,Thymeleaf,我有一个小的SpringBoot应用程序,它可以生成一个报告,我想通过电子邮件发送这个报告。为了生成报告,我使用Thymeleaf。为了构建图表,我使用谷歌图表,并将其渲染和插入为图像 我用于在页面上显示报告和呈现电子邮件内容的模板相同: 报表生成器 报表生成器 测试计划 名称 通过 失败 var testExecutionData=/*[${testExecutionData}]*/'noValue'; var allData=/*[${allData}]*/'noValue'; $(文档

我有一个小的SpringBoot应用程序,它可以生成一个报告,我想通过电子邮件发送这个报告。为了生成报告,我使用Thymeleaf。为了构建图表,我使用谷歌图表,并将其渲染和插入为图像

我用于在页面上显示报告和呈现电子邮件内容的模板相同:


报表生成器
报表生成器
测试计划
名称
通过
失败
var testExecutionData=/*[${testExecutionData}]*/'noValue';
var allData=/*[${allData}]*/'noValue';
$(文档).ready(函数(){
google.charts.load('current'{
软件包:['corechart','bar']
});
setOnLoadCallback(drawColumnChart);
});
函数drawColumnChart(){
对于(i=0;i对于(var i=0;i我在浏览器中打开了thymeleafTemplateEngine为我呈现的html,它显示了所有的图表。显然,浏览器的工作是处理javascript而不是Thymeleaf。我需要找到一种方法在发送电子邮件之前预处理电子邮件,以便像在浏览器中一样插入所有图像

<div id="chart_div0" class="w-100 mw-100 p-3"><img src="data:image/png;base64,iVBvx...">


图表是异步绘制的,这就是为什么在插入图像之前需要等待
'ready'
事件的原因。在发送电子邮件之前,您还需要等待
'ready'
事件…@WhiteHat谢谢您的提示。您是指类似史密斯的文档。readystate=='complete'?不,它在上面的代码中-->
google.visualization.events.addListener(图表,'ready',函数(){
但对于电子邮件,它使用相同的模板,因此在生成电子邮件时等待就绪状态…或者我遗漏了什么?我不确定您是否可以在电子邮件中运行javascript…即使发送时一切都正确。