thymeleaf 動態生成表格-每隔n列換一行

thymeleaf 動態生成表格,比如每隔5列換一行(增加一個<tr></tr>)
<table cellpadding="0" cellspacing="0" border="1">
    <th:block th:each="usr,status:${userList}">
        <p th:remove="tag" th:utext="${(status.index+1)%5==1 ? '&lt;tr&gt;':''}"/>
        <td><input name="userList" type="checkbox" th:value="${usr.id}" th:text="${usr.nickname}"/>&nbsp;
        </td>
        <p th:remove="tag" th:utext="${(status.index+1)%5==0 ? '&lt;/tr&gt;':''}"/>
    </th:block>
</table>
th:remove屬性值
  1. tag: 刪除當前標籤(即包含這個屬性的標籤),但不刪除它的子標籤(孩子節點)。
  2. all: 刪除當前標籤和它的所有子標籤。
  3. body:不刪除當前標籤,但刪除它所有的子標籤。
  4. all-but-first: 刪除當前標籤的所有子標籤,除了第一個子標籤。
  5. none:什麼也不做。
th:utext屬性

可以輸出非文本內容(比如HTML元素)

th:text屬性

只能輸出文本內容,如果是特殊字符則會轉義成普通文本輸出(如html元素會變爲文本輸出)

th:each屬性

用法:th:each="usr,status:${userList}"
參數${userList}表示要循環的集合,
第一變量usr表示當前循環中的元素引用(集合中的一個元素,變量名字可以自定義),
第二個變量status表示循環狀態值(變量名字可以自定義)

  1. status.index:表示當前元素的索引(從0開始計算)。
  2. status.count: 也是索引(從1開始計算,即index+1)
  3. status.size: 被迭代集合對象大小
th:block標籤

功能標籤,標籤本身不會輸出爲一個html元素,只是用來做取值或者循環等功能性用途。











發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章