You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Thymeleaf遍历集合时生成的ol列表序号均为1是什么原因?

问题原因

你把th:each属性写在了<ol>标签上,Thymeleaf会遍历集合为每个元素单独生成一个完整的有序列表,实际渲染输出的HTML结构如下:

<ol>
    <li>test1</li>
</ol>
<ol>
    <li>test2</li>
</ol>

每个独立的<ol>列表都只有1个列表项,序号都会从1开始计数,就出现了两个序号都是1的情况。

修复方案

把th:each属性移到<li>标签上即可,仅生成一个有序列表,多个列表项按顺序自动排序:

<ol>
    <li th:each="test: ${tests}" th:text="${test.toString()}"></li>
</ol>

修改后渲染输出的列表就会按1、2的顺序正常显示序号。

内容的提问来源于stack exchange,提问作者Tomek Nowak

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 12:45:01