Thymeleaf学习笔记

导读:本篇文章讲解 Thymeleaf学习笔记,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

在开头要引入如下字段,声明名称空间

<html xmlns:th="http://www.thymeleaf.org">

标准表达式语法

  • $ 开头表示变量
  • @开头表示连接 不管是静态资源的引用,form表单的请求,凡是链接都可以用@{…} 。这样可以动态获取项目路径,即便项目名变了,依然可以正常访问   
  • <td ><a th:href="@{/edit.do(fid=${fruit.fid})}">苹果1</a></td>
  • #开头表示内置方法

if语句示例:

<tr th:if="${#lists.isEmpty(session.fruitlist)}">

双引号内部以$开头表示是一个变量值的判断,#lists.isEmpty则是thymeleaf的一个内置判空方法,session,fruitlist则是当前会话存储的一个fruitlist属性.

else语句示例:

<tr th:unless="${#lists.isEmpty(session.fruitlist)}" th:each="fruit : ${session.fruitlist}" >

th:unless表示else语句,th:each表示循环语句,fruit表示循环的变量名,使用示例如下:

<td th:text="${fruit.price}">5</td>

th:each 的用法需要格外注意,打个比方:如果你要循环一个div中的p标签,则th:each属性必须放在p标签上。若你将th:each放在div上,则循环的将是整个div。

th属性

设置文本内容th:text ,设置input的值th:value ,循环输出th:each ,条件判断th:if,插入代码块th:insert,定义代码块th:fragment,声明变量th:object

<!--设置文本-->
<td th:text="${fruit.price}">5</td>
<!--设置input的值-->
<td><input type = "text" name = "fname" th:value="*{fname}"></td>
<!--设置object的值-->
<form th:action="@{/update.do}" method="post" th:object="${fruit}">

设置了object值之后,对于对象的属性值可以直接调用,调用形式如下:

<!--先声明object-->
<form th:action="@{/update.do}" method="post" th:object="${fruit}">
<input type="hidden" name="fid"  th:value = "*{fid}"/>

其等价于

<input type="hidden" name="fid"  th:value = "${fruit.fid}"/>

||会自动拼接字符串

<!--使用||前:-->
<th:onclick="'delFruit('+${fruit.fid}+')'"/>
<!--使用之后-->
<th:onclick="|delFruit(${fruit.fid})|"/>

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/88908.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!