java - Spring thymeleaf limit text output in a th :each loop

标签 java spring thymeleaf

我目前正在做一个学校项目,快完成了。我有一个管理面板,其中列出了我的博文,我想限制文本字段,以便当它达到 150 个字符时它会中断并键入 3 个点“...”..

列表的代码在这里:

 <tr th:each = "blog: ${blogs}">
        <th th:text="${blog.title}" scope="row"></th>
        <td><p th:text="${blog.text}"></p></td>
        <td><p th:text="${blog.author}"></p></td>
        <td><p th:text="${blog.date}"></p></td>
        <td><a th:href="@{/blog/delete/{id}(id=${blog.id})}"class="btn btn-danger">Delete</a><a th:href="@{/blog/update/{id}(id=${blog.id})}" class="btn btn-info ml-2">Edit</a></td>
    </tr>

我尝试在 google 上搜索,但找不到解决方案。

感谢您的帮助!

/尼克

最佳答案

如果您不想通过 CSS 来完成,您可以按如下方式进行:

<td><p th:text="${#strings.length(blog.text)>150 ? #strings.substring(blog.text,0,150) + '...'} : blog.text"></p></td>

编辑: 经过更多搜索后发现了这个简单的方法:

<td><p th:text="${#strings.abbreviate(blog.text,150)} "></p></td>

这是执行上一个解决方案的简写符号。您可以在 here 中找到详细信息.

关于java - Spring thymeleaf limit text output in a th :each loop,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55158525/

相关文章:

java - 来自字符串的位图

java - 单元测试 ArrayMap 抛出异常放入 android.util.ArrayMap 中的方法未被模拟

java - 为什么 1.7 以下的源代码不允许使用 <> 运算符?

java - 如何使用 Spring WebServiceTemplate 禁用 SSL 证书检查?

thymeleaf - 如何将公共(public)数据传递到项目中的每个页面

java - Thymeleaf 不工作(th :fragment/th:replace) using bootstrap

java - Titan getVertices() 函数永无止境

java - 如何使用 Spring/MultipartFile 捕获中断的流

java - 具有自定义注释的字段的 Gson 自定义序列化

java - Spring Thymeleaf Hibernate 验证自定义消息在页面上不可用