반응형
ajax로 체크박스에 체크된 값 것들중 필요한값을 객체에 넣어서 넘기고 싶었다.
값을 세팅하고 json 형태로 ajax통신을 이용해서 값을 넘기는데 까지는 별 문제가 없었는데...
문제는 java controller 단에서 값을 받는데 계속 오류가나서 멘붕이 왔다.
var testArray = [];
$("input:checkbox[name='testChk[]']").each(function(){
if(this.checked) { //체크된 항목
var objData = new Object();
objData.test1 = this.dataset.test1; //data에서 원하는 값을 가져온다.
objData.test2 = this.value; // value값을 가져온다.
testArray.push(objData);
}
});
console.log(testArray)
var param = {
"testArray" : JSON.stringify(testArray)
};
$.ajax({
url : url,
data : param,
type : "POST",
dataType : "json",
async : true,
// traditional:true,
error : function(xhr, txt) {
AjaxUtil.error(xhr);
},
success : function(jsonData) {
console.log("success");
if (jsonData.result == 1) {
jAlert("성공");
} else if (jsonData.result == -1) {
jAlert("오류가 발생하였습니다.");
}
}
});
이런식으로 사용 해본적은 없어서 구글링하면서 이방법 저방법 다 해봤는데 생각처럼 잘 되지 않아서... 결국 그냥 각각 배열에 담아서 처리를 해뒀다.
분명 또 이런식으로 사용해야할 상황이 올텐데 해결방법이 궁금...
//시도 1
@ResponseBody
public String testJson(HttpServletRequest request, HttpServletResponse response, HttpSession session,
@RequestParam("testArray") String testArray) throws Exception {
JSONArray getTestList = JSONArray.fromObject(testArray);
for(Object js : getTestList) {
JSONObject getAddrObject = (JSONObject)js;
String test1 = (String)getAddrObject.get("test1");
}
이런식으로 했었는도 해봤었는데 계속 오류..
오류코드는 캡쳐를 못해뒀다...
해결방법이 매우궁금하다!
728x90
반응형
'IT > JQUERY' 카테고리의 다른 글
[jQuery] ajax cache 이슈/ IE 에서 cache 가 남아있는 경우 (0) | 2021.03.05 |
---|---|
[Jquery] Jquery 문자열 자르기 split() (0) | 2021.02.25 |
jQuery unrecognized expression 오류 (2) | 2017.06.13 |
[jqgrid] jqgrid 특정 row, cel 속성 추가하기 (2) | 2015.11.12 |
브라우져 or 모바일 구분 (0) | 2015.10.03 |