Je suis nouveau dans thymeleaf et j'essaie de créer un modèle. Mon problème est ce code:
CODE
<h1 th:text="${header.title}" >
title
<small th:text="${header.subtitle}" >Subtitle</small>
</h1>
Je veux obtenir cette sortie:
<h1> TITLE <small> SUBTITLE</small> </h1>
Mais voici le véritable résultat:
<h1> TITLE </h1>
Comment puis-je faire pour ne pas enlever ce qui est à l'intérieur de "petit"?.
Merci d'avance.
J'ai rencontré le même problème. La réponse est th:inline='text'
Cela devrait résoudre votre problème
<h1 th:inline="text" >
[[${header.title}]]
<small th:text="${header.subtitle}">Subtitle</small>
</h1>
ou vous pouvez aussi utiliser th:remove="tag"
<h1>
<span th:text="${header.title}" th:remove="tag">title</span>
<small th:text="${header.subtitle}" >Subtitle</small>
</h1>
Indépendamment de la sémantique des balises, la bonne réponse est celle-ci:
<h1>
<span th:text="${header.title}" th:remove="tag">title</span>
<small th:text="${header.subtitle}" >Subtitle</small>
</h1>
De cette façon, Thymeleaf supprime de <span>
tag et les résultats correspondent à ce que vous attendez:
<h1>
TITLE
<small>SUBTITLE</small>
</h1>
Cordialement!
Je ne suis pas sûr de ce que vous essayez, car les balises small
de votre h1
N'apparaîtront pas petites. La balise Thymeleaf th:text
Remplacera tout le texte de votre balise h1
, C’est la raison pour laquelle votre sortie n’affiche que "TITLE". Vous devez placer les balises <small>
En dehors de votre balise h1
.
<h1 th:text="${header.title}">title</h1>
<small th:text="${header.subtitle}">Subtitle</small>
Et je crois que vous recherchez cette réponse:
<h1> <span th:text="${header.title}" th:remove="tag">title</span> <small th:text="${header.subtitle}">Subtitle</small> </h1>
en plus de la réponse @Faraj, vous pouvez également utiliser th:block
comme ça
<h1>
<th:block th:utext="${header.title}"/>
<small th:text="${header.subtitle}" >Subtitle</small>
</h1>