728x90
반응형
thymeleaf 3.0.10 이상을 사용하는 html에서 javascript 함수에 인수를 전달할때
기존에는 이렇게 작성했다.
1
|
<a href="#" th:onclick="${'writeProc('+ detailVO.itemSeq+')'}">Delete</a>
|
cs |
하지만 아래와 같은 에러 메시지가 나온다.
org.thymeleaf.exceptions.TemplateProcessingException: Only variable expressions returning numbers or booleans are allowed in this context, any other datatypes are not trusted in the context of this expression, including Strings or any other object that could be rendered as a text literal. A typical case is HTML attributes for event handlers (e.g. "onload"), in which textual data from variables should better be output to "data-*" attributes and then read from the event handler.
그래서 thymeleaf 3.0.10 이상에서는 이렇게 바꿔야 한다.
1
|
<a href="#" th:onclick="writeProc( [[${detailVO.itemSeq]] )">Delete</a>
|
cs |
함수 호출 부분이 보기에 좀더 직관적이라 좋다.
728x90
반응형
'코딩 삽질' 카테고리의 다른 글
[메모] 네이버 클라우드 서버 - 윈도우 서버 세팅 (0) | 2019.11.06 |
---|---|
[tomcat] memory leak 에러 (0) | 2019.11.05 |
[mybatis] java.lang.NumberFormatException (0) | 2019.10.31 |
[spring] html에서 controller의 @ModelAttribute vo의 List로 (0) | 2019.10.22 |
[springboot] lombok 컴파일 에러 (0) | 2019.10.13 |