본문 바로가기
개발

[javascript] form 값을 get parameter 형식으로 바꿔주는 함수

by 비손 2010. 3. 15.

이 코드는 'select-multiple'을 지원하지 않습니다. 지원하는 코드 확인하기

Ajax 이용하다 보면 폼을 파라미터 형식으로 변환 해야 하는 경우가 많이 있는 것 같습니다.
여기저기 뒤지고 다녀 보니 그냥 엘리먼트를 파라미터로 바꾸는 함수는 많이 있더라구요~
그런데, 라디오와 체크박스에 대해서는 작동하지 않아서 조금 수정했습니다. 

function CreateParams(f) {

 var intCnt = f.length;
 var regExp = /[&]/;
 var returnText = "";
 
 for (var y=0; y<intCnt; y++) {
  if (f[y].name != "" & !((f[y].type=="radio" | f[y].type=="checkbox") ^ f[y].checked==true)) {
   returnText += "&" + f[y].name + "=" + encodeURI(f[y].value);
  }
 }
 
 return returnText.replace(regExp,"");
}