작성자 없음
작성자 정보가 삭제된 글입니다.
작성
·
259
답변 1
2
안녕하세요, hjemsti 님. 공식 서포터즈 codesweaver 입니다.
.
체크박스가 체크되지 않았을때의 기본동작은 HTTP가 결정합니다.
regions 라는 체크박스가 있다고 하고, 사용자가 이 체크박스를 체크하지 않았다고 할때, 개발자가 바라는 방식은 {regions : null} 의 형태로 값이 넘어오는것입니다. 값 자체는 null이든 false이든 사실 중요하지는 않습니다.
문제는, HTTP의 기본 동작은, regions 자체가 아예 넘어오지 않고 {} 빈 값이 넘어오는것이 기본 동작이라는 점입니다. 그래서 regions가 널인지 체크하는 구문자체도 오류가 발생할 수 있습니다.
if (regions == null) {
... some code...
}
// error!! regions가 존재하지 않습니다.
그래서 과거에는 regions의 값이 유효한지에 앞서 regions 자체가 존재하는지도 체크해야 하는, 번거로운 작업을 해야 했습니다 :) 이에 타임리프는 사용자가 체크박스를 체크하든 하지 않든 언제나 regions라는 필드를 전달받기 위해 hidden 필드를 몰래 추가하는 것입니다.
.
감사합니다.