突出显示 html 中的文本无效

highlight text in html not working

我想突出显示从服务器返回的文本,如下所示

This is my name <em>John</em>

我在服务端调试,返回了上面的字符串。 但是在浏览器中呈现时,文本没有突出显示。

显示如下

"This is my name <em>John</em>"

浏览器查看源码如下图

This is my name &lt;em&gt;John&lt;/em&gt;

我应该转义“<”和“>”符号吗? . 我在此应用程序中使用 spring mvc 并使用 thymeleaf 生成 html

<div th:if="${not #lists.isEmpty(results)}">
                    <h3>Search Results</h3>
                    <table class="table table-striped">
                        <tr>
                            <th>Id</th>
                            <th>Title</th>

                        </tr>
                        <tr th:each="result : ${results}">
                            <td th:text="${result.id}">Id</td>
                            <td th:text="${result.title}">Title</td>

                        </tr>
                    </table>

                </div>

您也可以使用 HTML5 标记来突出显示

<p>test test test <mark>test</mark> today.</p>

这就是解决方案

标题

而不是 th.text ,使用 th.utext