인프런 커뮤니티 질문&답변

곽장현님의 프로필 이미지
곽장현

작성한 질문수

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

체크 박스 - 멀티

th:field 질문있습니다.

작성

·

373

0

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.

1. 강의 내용과 관련된 질문을 남겨주세요.
2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.
(자주 하는 질문 링크: https://bit.ly/3fX6ygx)
3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.
(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)

질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)

[질문 내용]
여기에 질문 내용을 남겨주세요.

 

thfield를 사용하면

name과 id가 같은 값이 들어가는것으로 알고 있는데

<div th:each="region : ${regions}" class="form-check form-check-inline">
    <input type="checkbox" th:field="*{regions}"

위 코드의 경우에는 name은 regions이며, id는 each가 되면서 regions1, regions2가 되는 이유가 궁금합니다.

답변 1

0

안녕하세요, 곽장현 님. 공식 서포터즈 y2gcoder 입니다.

앞서 학습하신 바에 따르면 th:field는 id와 name 모두 입력한 변수 값으로 동일하게 들어가는 것으로 알고 있는데 해당 예제에서는 다르게 작동하는 이유에 대해서 질문해주신 것으로 이해했습니다.

이 부분에 대해서는 해당 강의의 강의자료와 해당 강의를 다시 한 번 주의깊게 수강함과 더불어 html 태그에서 id 값이 유일해야 한다는 규칙을 기억하시면 좋습니다. html 태그의 id값은 저희가 흔히 아는 id값처럼 유일한 값이어야 합니다. 그런데 해당 경우에서는 th:each를 통해 다수의 체크박스를 만들어야 합니다. 그래서 예제처럼 사용할 때는 thymeleaf에서 반복되는 값에 동적으로 인덱스값을 추가해서 고유한 id값을 만들어주게 됩니다.

요약하면 thymeleaf의 편의 기능 중 하나라고 생각하시면 될 것 같습니다.

감사합니다.

곽장현님의 프로필 이미지
곽장현

작성한 질문수

질문하기