작성
·
803
0
안녕하세요?
타임리프 수업중에 이해가 안가는 부분이 있어서 질문드립니다.
강의 내용 중에 item.html을 보면
상품명 부분에 th:href="@{|/basic/items/${item.id}|}" 이 부분을
th:onclick="|location.href='@{/basic/items/{itemId}(itemId=${item.id})}'|"
이렇게 바꿨을 때 왜 동작을 안할까요??
상품목록 페이지에서 상품명 부분을 클릭했을 시 해당 item의 정보를 보여주니까
문제가 없다고 생각했는데 안되는게 궁금하네요 ㅜㅜ
답변 1
1
안녕하세요, KIHWAN SEO 님. 공식 서포터즈 codesweaver 입니다.
.
a 태그의 href 속성이 아래와 같이 되어있지 않은지 확인해주시기 바랍니다.
<a href="item.html"
th:onclick="|location.href='@{/form/items/{itemId}(itemId=${item.id})}'|"
th:text="${item.itemName}">상품명</a></td>
이 경우, 상품명을 클릭하게 되면, onclick 이 처리되기 이전에 href 에 의해 item.html으로 이동하는 처리가 먼저 진행됩니다. 그렇게 되면 id 값이 없는 상세 페이지로 이동하게 되기에, Whitelabel 페이지가 보이게 됩니다. 해당 href 부분을 # 으로 처리하게 되면 onclick 이벤트가 정상적으로 처리 됩니다.
.<a href="#"
th:onclick="|location.href='@{/form/items/{itemId}(itemId=${item.id})}'|"
th:text="${item.itemName}">상품명</a></td>
감사합니다.
해결되었습니다. 감사합니다!