jQuery API 문서
jQuery에서 ajax() 함수의 기본 Content-Type은 “application/x-www-form-urlencoded”이므로 전송할 데이터는 query string 형식으로 작성해야 합니다. 쿼리스트링은 “key1=value&key2=value2&…”와 같은 포맷을 갖습니다.
1. form 요소 값들을 query string으로 만들기
$(‘#폼ID’).serialize()
2. javascript 객체를 query string으로 만들기
jQuery.param(객체)
만약 요청 Content-Type을 “application/json” 으로 변경한 경우에는 쿼리스트링이 아니라 json 형식의 스트링으로 데이터를 전송해야 합니다.
form엘리먼트 값들을 json 객체로 만들어주는 방법은 다음 사이트에 다양한 방법이 나와있습니다.
http://stackoverflow.com/questions/1184624/serialize-form-to-json-with-jquery
실제 ajax() 함수에서는 json 객체를 스트링 타입으로 바꿔서 대입합니다.
JSON.stringify(json객체)
그러나 쿼리스트링 형식이 가능한 상황에서 굳이 json 형식으로 데이터를 보내는 것은 별로 권장하지 않는 듯합니다.
출처 : http://ecogeo.tistory.com/305

15 Replies to “jQuery : serialize(), param() 정리”