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 방식 모두 동일하게 처리한다.