我是百里香的新人,我尝试创建一个模板。我的问题是这段代码:
CODE
<h1 th:text="${header.title}" >
title
<small th:text="${header.subtitle}" >Subtitle</small>
</h1>
我想得到这个输出:
<h1> TITLE <small> SUBTITLE</small> </h1>
但这是真正的输出:
<h1> TITLE </h1>
我怎么能这样做呢?它不会删除&#34; small&#34;?内的内容。
提前致谢。
答案 0 :(得分:117)
我遇到了同样的问题。 答案是th:inline='text'
这可以解决您的问题
<h1 th:inline="text" >
[[${header.title}]]
<small th:text="${header.subtitle}">Subtitle</small>
</h1>
或者您也可以使用th:remove="tag"
<h1>
<span th:text="${header.title}" th:remove="tag">title</span>
<small th:text="${header.subtitle}" >Subtitle</small>
</h1>
答案 1 :(得分:7)
无论标签的语义如何,正确答案都是这样的:
<h1>
<span th:text="${header.title}" th:remove="tag">title</span>
<small th:text="${header.subtitle}" >Subtitle</small>
</h1>
通过这种方式,Thymeleaf会删除de <span>
标记,结果就是您所期望的结果:
<h1>
TITLE
<small>SUBTITLE</small>
</h1>
问候!
答案 2 :(得分:1)
我不确定您在尝试什么,因为small
中的h1
标记看起来不会很小。 Thymeleaf th:text
标记将替换h1
标记中的所有文字,这就是您的输出仅显示&#34; TITLE&#34;的原因。您应将<small>
标记放在h1
标记之外。
<h1 th:text="${header.title}">title</h1>
<small th:text="${header.subtitle}">Subtitle</small>
我相信你正在寻找这个答案:
<h1>
<span th:text="${header.title}" th:remove="tag">title</span>
<small th:text="${header.subtitle}">Subtitle</small>
</h1>
击> <击> 撞击>
答案 3 :(得分:0)
除了@Faraj响应之外,您还可以像这样使用th:block
<h1>
<th:block th:utext="${header.title}"/>
<small th:text="${header.subtitle}" >Subtitle</small>
</h1>