728x90
반응형
원인
var html = ''
+ ...
<c:forEach items="${historyExecutList }" var="item" varStatus="status">
+ ...
+ ' <td><c:out value="${item.col1}"/></td>'
+ ...
</c:forEach>
+ ...
;
과 같이 html을 생성 도중 JSTL변수 col1의 값이
"가나다
라마바사"
와 같이 개행문자가 들어있었고
개발자 도구의 콘솔에서는 Uncaught SyntaxError: Invalid or unexpected token오류를 뱉고 있었다.
해결 방법
' 을 `(백틱)으로 바꿔주기
+ ` <td><c:out value="${item.col1}"/></td>`
js에서
var test = '가나
다라마';
와 같이 변수 선언이 안되는 것을 생각하면 쉬운 해결방법이다.
예전 프로젝트 할 때 왜 굳이 멀리있는 ` 를 사용하지 했었는데.. 다 이유가 있던 것이었다.
728x90
반응형
'IT > JAVA' 카테고리의 다른 글
[취약점/보안] spring 전자정부 프레임워크(egov) 취약점 조치 모음 (0) | 2023.08.10 |
---|---|
MySQL connection timeout 방지 (0) | 2023.08.09 |
톰캣 배포 방법 - WinSCP 를 사용하여 웹앱 war 배포하기 (0) | 2023.08.03 |
[JSP] TLD를 활용하여 jsp에서 <c:set>으로 데이터 받기 (0) | 2023.08.02 |