본문 바로가기
Front/Thymeleaf

[Thymeleaf] button태그에 location.href 경로 넣기 (th:onclick)

by chris_jaehun 2022. 9. 13.
반응형

- 이슈

타임리프로 프로젝트 중 기존에는 button태그 에서 자바스크립트 함수만 호출하다가 api path로 가도록 하기 위해서 location.href를 사용하였으나 제대로 동작하지 않았다.

 

- 해결

<button th:onclick="|location.href='@{/board/download(filenum=${file.numMac})}'|">↓</button>

위 코드 처럼 th:onclick 안에서 location.href 전, 후에 ' | '(shift+백슬래쉬)를 넣어주고 그 안에서 경로를 설정해주니 정상적으로 동작되는 걸 확인했다.

 

이 외에도

<button th:onclick="'location.href=\'' + @{/board/download(filenum=${file.filenum})} + '\''">↓</button>

위 처럼 이스케이프 문자인 ' \ ' 백슬래쉬를 사용하는 방법이 있었는데 아무래도 가독성이 떨어지고, 지저분하다는 느낌이 들어서 처음 방법으로 해결했다.

반응형