본문 바로가기

※/공부

타임리프(thymeleaf) 속성 정리

지금까지 프로젝트하면서 사용한 부분을 정리해본다.

계속 추가될 예정


th:value (값 넣기)

1
<input type="hidden" id="dataId" name="dataId" th:value="${formData.getDataId()}"/>
cs

th:text (텍스트 넣기)
1
<span th:text="${dataInfo.getDataName()}"></span>
cs

th:attr (속성 추가)
1
2
3
4
5
<div class="checkbox">
    <p>허용 여부</p>
    <label><input type="radio" name="isPerm" value="1" th:attr="checked=${formData.getIsPerm().toString() == '1' ? 'true' : 'false'}">예</label>
    <label><input type="radio" name="isPerm" value="0" th:attr="checked=${formData.getIsPerm().toString() == '0' ? 'true' : 'false'}">아니오</label>
</div>

cs


th:classappend (클래스 추가)

1
2
3
<li class="nav-item" th:classappend="${data != null} ? 'dropdown' : ''">
    ....생략....
</li 

cs


th:action

1
<form id="dataForm" th:action="@{/services/data/add}" method="POST">
cs

th:href
1
<link rel="stylesheet" th:href="@{/css/ui.jqgrid-bootstrap.css}">
cs


th:if (조건문)

1
2
3
4
<div class="modal-footer" th:if="${dataInfo.getOrder() <= 2}">
    <a class="btn" onclick="save();">등록</a>
    <a class="btn" onclick="delete();">삭제</a>
</div>

cs


th:each (반복문)

1
2
3
4
<select class="form-control" id="ComId" name="ComId">
    <option value="">선택</option>
    <option th:each="list, i : ${comList}" th:value="${list.getCodeName()}" th:text="${list.getDescription()}"></option>
</select>

s

(순서대로 list = 사용할 변수명,  i = 인덱스, ${} = 받을 리스트 객체)


th:with (변수사용)

1
2
3
4
5
<div class="col-md-12" th:with="dataFlag=${(formData== null || formData.getDataId() == '') ? false : true}">
 
    <input type="text" id="pernrId" name="pernrId" th:value="${dataFlag? formData.pernrId() : ''}"/>
 
</div>
cs

( th:with="변수1=xxx, 변수2=yyy" 식으로 여러 개의 변수 선언 가능 )