본문 바로가기
[개발] Programming/Javascript

자바스크립트 한글 문자열 깨지는 경우, encode / decode

by eatyourKimchi 2018. 10. 30.



JSP 페이지 상단에 charset=UTF-8" pageEncoding="UTF-8" 명시해도 

한글이 깨지는 경우 해결 방법.



URL 파라미터에 한글이 깨지는 경우


JSP -> JAVA -> JSP

첫 화면에서 한글 파라미터를 컨트롤러에서 받을 땐 한글이 깨지지 않았으나,

다시 JSP로 넘겨줄 때 한글이 깨지는 경우, 인코딩 하여 넘겨주면 안깨진다.


var encodedUrl = encodeURI("이름이 뭐에요?");

// 최종 JSP 페이지에서 아래와 같이 복호화 시켜주면된다.

var deCodedUrl = decodeURI(변수));



자바스크립트에서 한글이 깨지는 경우


JAVA > JSP 

JAVA 단에서는 한글이 잘 보이는데 JSP 페이지에서 깨지면,

우선 JAVA 단에서 인코딩을 해준 뒤, 


String korStr = URLEncoder.encode("이름이 뭐에요?", "UTF-8");

// 자바스크립트에서 복호화하면 된다.

var korStr = decodeURIComponent('JAVA 단에서 넘어온 변수');



외부에서 자바스크립트를 호출한 경우


JSP > JSP 

다른 자바스크립트 파일을 호출했는데 한글이 깨지는 경우

charset 을 스크립트 태그에 추가해준다.


<script type="text/Javascript" src="jsFile.js" charset="UTF-8"></script>




참고: cofs.tistory.com/310


댓글