Thymeleaf th:text-поместите текст без удаления HTML-структур

Я новичок в thymeleaf и я пытаюсь создать шаблон. Моя проблема заключается в следующем коде:

код

<h1 th:text="${header.title}" >
   title
   <small th:text="${header.subtitle}" >Subtitle</small>
</h1>

Я хочу получить этот выход:

<h1> TITLE <small> SUBTITLE</small> </h1>

но это реальный выход:

<h1> TITLE </h1>

как я могу сделать так, чтобы он не удалял то, что находится внутри "маленького"?.

спасибо заранее.

4 ответов


я столкнулся с той же проблемой. ответ 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>

независимо от семантики тегов, правильный ответ звучит так:

<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>

С уважением!


Я не уверен, что вы пытаетесь, так как small теги h1 не будет казаться маленьким. В Thymeleaf th:text тег заменит весь текст в вашем h1 - тег, поэтому ваш вывод показывает только "название". Вы должны разместить <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>


в дополнение к ответу @Faraj вы также можете использовать th:block такой

<h1>
   <th:block th:utext="${header.title}"/>
   <small th:text="${header.subtitle}" >Subtitle</small>
</h1>