ajax로 데이터 넘기기
Back-End/Spring 2019. 8. 14. 16:31HTML부분
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="전시관람">
|
cs |
이제 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();
}
});
}
|
cs |
Spring Controller에서 데이터를 받을때는 배열은 배열로, String 타입은 String 타입으로 받으면 된다.
@RequestParam(value="checkArray[]") List<string> arrayParams,
@RequestParam(value="userId") String userId
만약 @RequestParam HashMap param으로 받을 경우, 배열은 첫번째 값만 넘어간다.
그러니 배열은 반드시 List로 넘겨야한다.
아래 책은 제가 공부할때 활용했던 책으로 추천드리는 책이니 한번씩 읽어보시는것을 추천드립니다!! ㅎㅎ
이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.
출처
'Back-End > Spring' 카테고리의 다른 글
Spring 게시판 댓글 관련 기능 구현 - 댓글 작성, 수정, 삭제 (내 프로젝트에 적용) (0) | 2019.08.21 |
---|---|
JSTL - 조건문 처리 (0) | 2019.08.16 |
Spring 게시판 게시글 쓰기(ckeditor 사용), 게시글 상세보기 (내 프로젝트에 적용) (0) | 2019.08.12 |
Spring 게시판 검색기능 구현 (내 프로젝트에 적용) (2) | 2019.08.09 |
Spring 게시판 목록 (내 프로젝트에 적용) (0) | 2019.08.09 |