#1942
이미 프로그램이 완성된 페이지를 수정할 일이 생겨서 따로 HTML을 만들기 보다는 직접 jsp를 수정하는게 편할것 같아 작업을 시작했는데 화면에 자꾸 에러를 뿌리더군요. 해결한 김에 메모 차원의 포스팅입니다.
<c:choose> when과 otherwise를 감싸는 필수 요소
<c:when> 선택된 상태, 기능이 적용된 상태를 처리할 때는 when에 작업<c:otherwise> choose 안에서 default 상태로 처리할 때는 otherwise에 작업
원래 파일은 대충 아래와 같은 구조를 가지고 있었습니다.
<div class="center">
<c:choose>
<c:when test="${...}">
<button type="button" class="check01 on" onclick="">확인</button>
</c:when>
<c:otherwise>
<button type="button" class="check01" onclick="">확인</button>
</c:otherwise>
</c:choose>
</div>
이 버튼들을 감싸는 블럭이 새로 필요하게 되었고 다음과 같이 바꿨더니 문제가 없긴 했는데.. 이런식으로는 무의미한 블럭이라는 생각이 들었습니다. 뭐랄까 이쁘지 않은 코드?
<div class="center">
<c:choose>
<c:when test="${...}">
<div class="first-box">
<button type="button" class="check01 on" onclick="">확인</button>
</div>
</c:when>
<c:otherwise>
<div class="first-box">
<button type="button" class="check01" onclick="">확인</button>
</div>
</c:otherwise>
</c:choose>
</div>
그래서.. 그럼 choose 와 when 사이에 박스를 추가시키면 되겠거니 생각했었는데.. 이게 에러를 뿜어내더군요. 아, 이게 틀린거구나..
<div class="center">
<c:choose>
<div class="first-box">
<c:when test="${...}">
<button type="button" class="check01 on" onclick="">확인</button>
</c:when>
<c:otherwise>
<button type="button" class="check01" onclick="">확인</button>
</c:otherwise>
</div>
</c:choose>
</div>
그래서 최종적으로 choose 를 감싸는 블럭으로 처리를 하니까 문제가 없어지더군요. 드디어 해결.
<div class="center">
<div class="first-box">
<c:choose>
<c:when test="${...}">
<button type="button" class="check01 on" onclick="">확인</button>
</c:when>
<c:otherwise>
<button type="button" class="check01" onclick="">확인</button>
</c:otherwise>
</c:choose>
</div>
<div class="second-box">
..
</div>
</div>
이로써 jsp를 접할때 스스로 해결할 수 있는 부분이 한가지 늘었습니다.
728x90
반응형
'program' 카테고리의 다른 글
웹 접근성의 명도 대비 확인을 수월하게 해주는 Contrast Grid (0) | 2019.09.17 |
---|---|
99% 세일! 상용프로젝트에 사용가능한 18종의 폰트를 $29에 구입 가능! (0) | 2019.09.06 |
이클립스 'localhost are already in use' 문제 (0) | 2019.07.28 |
라이노 초심자에게 추천! 라이노 3D 5+ 정리노트 (0) | 2018.12.14 |
Rhino로 3D 공부중 - 주사위 (0) | 2018.12.09 |
댓글