티스토리 뷰
잊을까봐 써놓는다 ㅡㅡ;
간단하게 input 값들을 문자열, 배열로 한꺼번에 넘기는 예제다.
먼저 HTML에서는..
1 2 3 4 | < input type = "hidden" id = "userId" value = "abcd" > < input type = "checkbox" name = "hobby" value = "독서" > < input type = "checkbox" name = "hobby" value = "운동" > < input type = "checkbox" name = "hobby" value = "전시관람" > |
이렇게 해주고,
javascript단에서 데이터를 불러와서 ajax로 넘긴다,,
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | function ajaxExample(){ // 사용자 ID를 갖고 온다. var userId = $( "#userId" ).val(); // name이 같은 체크박스의 값들을 배열에 담는다. var checkboxValues = []; $( "input[name='hobby']:checked" ).each( function (i) { checkboxValues.push($( this ).val()); }); // 사용자 ID(문자열)와 체크박스 값들(배열)을 name/value 형태로 담는다. var allData = { "userId" : userId, "checkArray" : checkboxValues }; $.ajax({ url: "goUrl.do" , type: 'GET' , data: allData, success: function (data){ alert( "완료!" ); window.opener.location.reload(); self.close(); }, error: function (jqXHR, textStatus, errorThrown){ alert( "에러 발생~~ \n" + textStatus + " : " + errorThrown); self.close(); } }); } |
Spring Controller단에서 데이터를 받을 땐,
배열은 배열로, 스트링은 스트링으로 받으면 된다.
@RequestParam(value="checkArray[]") List<string> arrayParams, @RequestParam(value="userId") String userId
만약 @RequestParam HashMap param으로 받을 경우, 배열은 첫번째 값만 넘어간다. 그러니 배열은 반드시 List로.
'공장 (factory) > - Programming..' 카테고리의 다른 글
[jQuery] 체크박스 체크 혹은 체크 해제 시 이벤트 발생. (2) | 2014.11.03 |
---|---|
[Java] Simplecaptcha를 이용한 자동 가입 방지 (13) | 2014.10.22 |
[Java] collection/array의 문자열을 구분자로 합치기. (0) | 2014.10.13 |
[Java] HmacSHA1 암호화 (1) | 2014.09.26 |
Window 환경에서 OpenSSL 설치 및 사용하기 (3) | 2014.09.24 |