jQuery JavaScript

AJAX - serialize 처리시 한글문제 해결

안녕로봇 2017. 7. 10. 18:31

값들을 직렬화해서 보냈더니 한글로 된 값들이 깨져서 이상하게 표시됨


해결

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
//보내는 쪽
//serialize 전에 값 인코딩 처리
$("#title01").val(encodeURI($("#title01").val()));
$("#contents01").val(encodeURI($("#contents01").val()));
$("#contents02").val(encodeURI($("#contents02").val()));
$("#contents03").val(encodeURI($("#contents03").val()));
 
//'%'를 '%25'교체, 직렬화(폼 내용)
var serializedData = frm.serialize().replace(/%/g,'%25');
 
//받는 쪽 
//디코딩 처리
dto.setTitle01(URLDecoder.decode(URLDecoder.decode(dto.getTitle01(), "UTF-8"), "UTF-8"));
dto.setContents01(URLDecoder.decode(URLDecoder.decode(dto.getContents01(), "UTF-8"), "UTF-8"));
dto.setContents02(URLDecoder.decode(URLDecoder.decode(dto.getContents02(), "UTF-8"), "UTF-8"));
dto.setContents03(URLDecoder.decode(URLDecoder.decode(dto.getContents03(), "UTF-8"), "UTF-8"));
cs


출처: 한영수 부장님