thymleaf常用语法总结

1.thymleaf 两种赋值方式

关键字用法
th:value< p th:value="${list.name}"> </p>
[[${ }]]<p> [[${ liat.name }]] </p>

2. 判断后台传入的对象是否为空

关键字用法
isEmptyth:if="${not #lists.isEmpty(schoolObj)}"
//不为空
th:if="${not #lists.isEmpty(schoolObj)}"
//为空
th:if="${#lists.isEmpty(schoolObj)}"

<option th:if="${not #lists.isEmpty(schoolObj)}" value="">全部</option>
如果schoolObj对象不为空,就展示后面的‘全部’

3.遍历对象

关键字用法
th:eachth:each=“obj,schoolStat:${schoolObj}”
//取值方式一:直接在展示数据的地方用[[${obj}]]
<tr th:each="list,listStat:${listAll}">
	<td>[[${list.name}]]</td>
</tr>
//取值方式二:或者通过对象.的形式取出对象中具体的值
<tr th:each="list,listStat:${listAll}">
	<td th:value="${list.name}"> </td>
</tr>
  • xxxStat是状态变量有以下几个属性:
关键字描述
index当前迭代对象的index(从0开始计算)
count当前迭代对象的index(从1开始计算)
size被迭代对象的大小
current当前迭代变量
even/odd布尔值,当前循环是否是偶数/奇数(从0开始计算)
first布尔值,当前循环是否是第一个 (true:是 false:不是)
last布尔值,当前循环是否是最后一个(true:是 false:不是)
  • 用法示例:
//使用三元表达式添加class属性,若索引是0,也就是从第一个开始(eq是等于)给标签添加class属性
<li th:each="catalog,catalogStat:${catalogArr}"  th:class="${catalogStat.index eq 0?'cur':''}" > </li>
//使用三元表达式,动态给标签添加样式.用了关键字last
<div th:each="chapter,chapterStat:${cata.children}" th:style="${chapterStat.last?'margin-bottom: 1.5rem;':''}">

4.th:selected选择框

<option th:selected="${obj.name eq schoolName}">[[${obj.name}]]</option>

解释:如果obj对象中的name等于schoolName,那么选择框就展示obj取到的name对应的值

5.三元表达式动态给标签添加样式

关键字用法
th:style<div th:style="${cataStat.index gt 0?‘display:none’:’’}">
  • gt是大于等同于>号

6.三元表达式动态给标签添加class属性

关键字用法
th:style<li th:class="${catalogStat.index eq 0?‘cur’ : ’ ’ }" > </li>

7.链接地址引入

关键字取值方式图片地址直接引入方式
th:srcth:src="${ teac.avatar}"th:src="@{/img/heaard.jpg}"

8.解析文本内容

关键字描述用法
th:text解析文本,不能解析html内容th:text="${obj.des}"
th:utext可以解析html标签th:utext="${teac.style}"
th:utext解析带空行的纯文本内容见下例1:

例1:<p th:utext="${#strings.unescapeJava(#strings.replace(#strings.escapeJava(dataObj.description),'\n','&lt;br/&gt;'))}"></p >

9.截取字符串

关键字描述用法
#string.substring(data,0,2)data是要截取的字符串,从0索引截取到2索引见例1:
#string.substring(data,2)从索引2开始截取,返回后面的部分见例2:

例1:<p th:text="${#strings.substring(dataObj,0,2)}"></p>
例2:<p th:text="${#strings.substring(dataObj,2)}"></p>

10.定义局部变量

关键字描述用法
th:with定义局部变量th:with=“time=123”

取值方式:${time}

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值