不要逃避 Thymeleaf 中的 th:content 标签
Posted
技术标签:
【中文标题】不要逃避 Thymeleaf 中的 th:content 标签【英文标题】:Don't escape th:content tag in Thymeleaf 【发布时间】:2015-01-09 00:37:37 【问题描述】:我目前正在使用 Thymleaf 2.1.3 从事 Spring Boot 项目。我正在向页面添加一些元标记,方法是:
<meta name="pagename" th:content="$pagename"/>
pagename 变量由控制器填写。这行得通,但事实上 pagename 是 html 转义的。这对我的应用程序来说是不正确的行为。我自己清理数据,然后将其放在内容标签中。
我环顾四周,发现 th:inline,它不适用于内容标签。还找到了 th:utext,但这也不适用于 th:content..
有人知道这个问题的解决方案吗?
谢谢!
【问题讨论】:
【参考方案1】:据我所知,Thymeleaf 总是会转义进入 HTML 属性的内容,这与规定内容应该转义的 XML/HTML 规范一致。也就是说,论坛上其他人尝试做同样的事情时可能会讨论一些解决方法:http://forum.thymeleaf.org/How-to-get-unescaped-text-into-title-attribute-td4027791.html
一个涉及创建自己的属性处理器,另一个是语法 hack。
您必须先自己清理内容吗?不能让Thymeleaf在view层做吗?
【讨论】:
以上是关于不要逃避 Thymeleaf 中的 th:content 标签的主要内容,如果未能解决你的问题,请参考以下文章
我再说一遍:不要裸辞不要裸辞!真正的勇士都敢于直面惨淡人生,而不是逃避!