使用 thymeleaf 循环的有序列表未连接

问题描述 投票:0回答:1

如果我必须含糊其辞,我很抱歉,因为我无法真正表达客户的要求。

我有一个堆叠的有序列表,其中显示了父级和子级的详细信息。在父子部分之前,父子部分之后的第一项和更多项显示不同的详细信息,但我必须将其放在同一个列表中。所以我想要实现的是:

enter image description here

但是我得到的是:

enter image description here

<ol type="a">
  <li>Coffee</li> //item without child detail

  <span class="widget-has-slot">{{the parent-child widget}}<br />
  <pre>
 &lt;li th:each="parent : ${parentChildMap}"&gt; //parent

   //parent detail

  &lt;ol&gt;                                   //child list start
   &lt;li th:each="child : ${parent.value}"&gt; //child

   //child detail

   &lt;/li&gt;                                  //child closing tag
  &lt;/ol&gt;                                  //child list end
 &lt;/li&gt;                                  //parent closing tag

<li>Water</li>  //more item without child detail
<li>Beer</li>
</ol>

我尝试使用计数器增量,但它仍然显示相同的结果。 参考:

  1. https://travishorn.com/ordered-lists-in-html-a4621e17532b
  2. https://www.w3schools.com/cssref/pr_gen_counter-increment.php#gsc.tab=0&gsc.q=list

目前,我正在使用 3 个不同的 ol 和起始值。一个用于第一项,一个用于百里香部分,另一个用于百里香之后,这显示了我想要的结果,但我知道这效率不高,因为当父项的数量发生变化时,我需要更改起始值。

<ol type="a">     // first ol
  <li>Coffee</li> //item without child detail
</ol>

  <span class="widget-has-slot">{{the parent-child widget}}<br />
  <pre>
&lt;ol type="a" start="2"&gt;                    //second ol
 &lt;li th:each="parent : ${parentChildMap}"&gt; //parent

   //parent detail

  &lt;ol&gt;                                   //child list start
   &lt;li th:each="child : ${parent.value}"&gt; //child

   //child detail

   &lt;/li&gt;                                  //child closing tag
  &lt;/ol&gt;                                  //child list end
 &lt;/li&gt;                                  //parent closing tag
&lt;/ol&gt; 

<ol type="a" start="5">   //third ol
 <li>Water</li>  //more item without child detail
 <li>Beer</li>
</ol>

如何在不手动更改起始值的情况下让它们工作?

java html thymeleaf html-lists
1个回答
1
投票

使用

th:start
,动态计算起始点。

<ol type="a" th:start="${2 + #lists.size(parentChildMap)}">
© www.soinside.com 2019 - 2024. All rights reserved.