Java/Thymeleaf

속성 값 설정

코딩공부 2021. 12. 3. 00:35

타임리프 태그 속성(Attribute)

타임리프는 주로 HTML 태그에 th:* 속성을 지정하는 방식으로 동작한다.

th:* 로 속성을 적용하면 기존 속성을 대체한다.

기존 속성이 없으면 새로 만든다.

 

 

@GetMapping("/attribute")
public String attribute() {
 return "basic/attribute";
}

 

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
 <meta charset="UTF-8">
 <title>Title</title>
</head>
<body>
<h1>속성 설정</h1>
<input type="text" name="mock" th:name="userA" />
<h1>속성 추가</h1>
- th:attrappend = <input type="text" class="text" th:attrappend="class=' large'" /><br/>
- th:attrprepend = <input type="text" class="text" th:attrprepend="class='large '" /><br/>
- th:classappend = <input type="text" class="text" th:classappend="large" /><br/>
<h1>checked 처리</h1>
- checked o <input type="checkbox" name="active" th:checked="true" /><br/>
- checked x <input type="checkbox" name="active" th:checked="false" /><br/>
- checked=false <input type="checkbox" name="active" checked="false" /><br/>
</body>
</html>

 


속성 설정

<input type="text" name="userA" />

 

속성 추가

- th:attrappend = <input type="text" class="text large" />

- th:attrprepend = <input type="text" class="large text" />

- th:classappend = <input type="text" class="text large" />

 

checkd 처리

- checked o 

( <input type="checkbox" name="active" th:checked="true" /> ) 

- checked x  

 

- checked=false 


 

속성 설정

th:* 속성을 지정하면 타임리프는 기존 속성을 th:* 로 지정한 속성으로 대체한다. 기존 속성이 없다면 새로 만든다.

타임리프 렌더링 전  - <input type="text" name="mock" th:name="userA" />

타임리프 렌더링 후  - <input type="text" name="userA" />

 

속성 추가

th:attrappend : 속성 값의 뒤에 값을 추가한다.

th:attrprepend : 속성 값의 앞에 값을 추가한다.

th:classappend : class 속성에 자연스럽게 추가한다.

 

checked 처리

HTML에서는 <input type="checkbox" name="active" checked="false" /> 

이 경우에도 checked 속성이 있기 때문에 checked 처리가 되어버린다.

HTML에서 checked 속성은 checked 속성의 값과 상관없이 checked 라는 속성만 있어도 체크가 된다.

이런 부분이 true , false 값을 주로 사용하는 개발자 입장에서는 불편하다.

 

타임리프의 th:checked 는 값이 false 인 경우 checked 속성 자체를 제거한다.

타임리프 렌더링 전: <input type="checkbox" name="active" th:checked="false" />

타임리프 렌더링 후: <input type="checkbox" name="active />

 

 

 

수강 강의

https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-mvc-2/dashboard

 

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술 - 인프런 | 강의

웹 애플리케이션 개발에 필요한 모든 웹 기술을 기초부터 이해하고, 완성할 수 있습니다. MVC 2편에서는 MVC 1편의 핵심 원리와 구조 위에 실무 웹 개발에 필요한 모든 활용 기술들을 학습할 수 있

www.inflearn.com

 

'Java > Thymeleaf' 카테고리의 다른 글

조건부 평가  (0) 2021.12.03
반복  (0) 2021.12.03
연산  (0) 2021.12.03
리터럴  (0) 2021.12.02
URL 링크  (0) 2021.12.02