如何用Thymeleaf内联JavaScript

时间:2018-11-07 12:19:31

标签: spring spring-boot thymeleaf

我想用Thymeleaf编写内联Javascript。

例如:

<script th:inline="javascript">
/*<![CDATA[*/
  /*[[${myCode}]]*/;
/*]]>*/
</script>

在Spring Boot中,我有这个:

model.addAttribute("myCode", "alert("test")");

我的输出HTML是:

<script th:inline="javascript">
/*<![CDATA[*/
  "alert("test")";
/*]]>*/
</script>

是一个字符串。我在做什么错了?

2 个答案:

答案 0 :(得分:1)

inlining时,[[...]]对应于th:text,而[(...)]对应于th:utext

所以

<script th:inline="javascript">
/*<![CDATA[*/
[(${myCode})]
/*]]>*/
</script>

答案 1 :(得分:0)

最后我明白了。

<script th:inline="javascript">
/*<![CDATA[*/
[#th:block th:utext="${myCode}" /]
/*]]>*/
</script>