網頁

2021/5/24

Spring Boot Thymeleaf 使用th:with設定變數 set local variables

p>Spring Boot Thymeleaf 使用th:with設定所屬標籤的的變數。


參考「Spring Boot Thymeleaf 簡單範例」,下面以此進行修改。


Thymeleaf可在標籤使用th:with宣告變數供子標籤取用。

例如在hello.html新增了兩個<div>,分別用th:with="var1='Awesome!'"宣告變數var1th:with="var2=${name.toCharArray()[0]}"宣告變數var2。如此即可在子標籤中以變數表示式${...}取用。

hello.html

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>Hello Thymeleaf</title>
</head>
<body>
    <p th:text="'Hello, ' + ${name} + '!'"/>

    <div th:with="var1='Awesome!'">
        <p th:text="${var1}">Bad!</p><!--宣告變數var1-->
    </div>

    <div th:with="var2=${name.toCharArray()[0]}"><!--宣告變數var2-->
        <p>First char of name <span th:text="'\'' + ${name} + '\''"></span> is <span th:text="'\'' + ${var2} + '\''"></span>.</p>
    </div>
</body>
</html>

上面解析結果如下。

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Hello Thymeleaf</title>
</head>
<body>
    <p>Hello, World!</p>

    <div>
        <p>Awesome!</p>
    </div>

    <div>
        <p>First char of name <span>'World'</span> is <span>'W'</span>.</p>
    </div>

</body>
</html>


沒有留言:

張貼留言