WEB2.0/ajax
Ajax 한글 파라미터 보내기
시반
2006. 7. 13. 19:08
XMLHttpRequest 는 전송시
<meta http-equiv="Content-Type" content="text/html; charset=euc-kr">
위에 처럼 euc-kr이 지정되어 있더라도 설정된 인코딩을 사용하지 않는다
따라서 한글일 경우 자바스크립트에서 직접 인코딩을 해주어야 한다
자바스크립트에서는 excape()와 encodeURIComponent() 를 지원해주고 있는데
escape는 유니코드로 encodeURIComponent는 UTF-8로 인코딩할 수 있다
[보내는 쪽의 코드 예제]
var param = "args="+encodeURIComponent($('args').value);
[받는 쪽의 코드 예제]
request.setCharactorEncoding("utf-8");
request.getParameter("args");
이렇게 보내는쪽과 받는 쪽 모두 인코딩을 동일하게 UTF-8로 전송하는 경우
한글이 깨지지 않으며 Get,Post 방식 모두 동일하게 처리한다.