연꾸
12
2017-11-14 23:23:13.0 작성 2017-11-14 23:24:04.0 수정됨
5
148

자바스크립트에서 AJAX를 이용해서 JSP에 객체배열 넘기기 ㅠㅠ


1.jsp파일과 ques.jsp 파일이 있습니다.

1.jsp에서 자바스크립트를 이용해서 객체를 만들고 

이 객체를 배열에 담아 ques.jsp로 보내고 싶습니다.

코드는 다음과 같습니다.


// -----1.jsp -------------//

//클래스 선언 
function A{
this.aValue;
this.bValue;
}
//객체 담을 배열 선언
aARR = [] ;
//객체 생성 
a = new A();
b = new A();
a.aValue = 1;
a.bValue = 2;
b.aValue = 3;
b.bValue = 4;
//배열에 담기 
aARR.push(a);
aARR.push(b);
\
이제 이 배열을 ques.jsp에 보내고 싶습니다 

그래서 

 function sendData_2(){
          jQuery.ajaxSettings.traditional = true;

          $.ajax({
             type: "POST",
             url: "ques.jsp",
             datatype:'json',
             data: {aARR:aARR}
             contentType:"application/json",
             success: function(data,status,xhr){
                alert("전송");
            },
             error:function(jqXHR,textStatus,errorThrown){
                console.log(jqXHR.responseText);
                }
             });
           
       }



이런식으로 짯는데 ques.jsp에서 값을 어떻게 받아야할지 모르겠어요.

객체를 담은 배열은 어떻게 전달해야하고 받아야 할까요ㅜ?


0
0
  • 답변 5

  • 리제네아
    2k
    2017-11-15 08:57:50.0

    ajax에서 던질때 아래와 같이 해보시고

    data: aARR


    Controller 에서는 Map으로 받아보시겠어요?

    0
  • 리제네아
    2k
    2017-11-15 09:00:24.0

    그리고 Ajax 를 사용하시는데 다른 jsp에게 데이터를 보내는 목적으로 사용하시는 거라면

    잘못 이해하고 계신게 아닌가 싶습니다.


    일반적으로 Ajax는 1.jsp라는 페이지를 불러오고 

    이미 출력된 1.jsp의 일부분의 내용을 변경하고자 할 때 사용합니다.


    물론 jsp에 데이터를 넘기고 그 jsp를 가져올 순 있지만 혹시나 싶어 글 남기고 갑니다.

    0
  • 연꾸
    12
    2017-11-15 10:34:46.0

    ㅠ 지금 자바스크립트에서 JSP로 값을 보내는 법을 몰라서 AJAX를 이용해서

    ques.jsp에 값을 던지고 다시 거기서 작업하려고 하는 참이였습니다.

    ㅠㅠ

    제가 MAP으로 받아보려고 하는데

    request.getParameterValues

    이런식으로 받는게 아닌가봐요? 

    0
  • 리제네아
    2k
    2017-11-15 10:46:27.0

    혹시 MVC1로 작업하는 중이신가요?


    제가 생각하고 있는게 맞다면 연꾸님께서는

    Ajax로 데이터를 던지는게 아닌 Submit으로 데이터를 던지는게 맞을 것 같네요.


    그렇다면, Submit으로 데이터를 어떻게 배열로 던지느냐가 또 문제겠네요.


    http://www.webmadang.net/develop/develop.do?action=read&boardid=1004&page=3&seq=105

    참고해보시면 name을 모두 같은 이름을 준 것을 확인하실 수 있습니다.



    1
  • 연꾸
    12
    2017-11-15 13:11:04.0

    와 지식이 대단하십니다.

    감사합니다...많이 배웠습니다 ㅜㅜ

    0
  • 로그인을 하시면 답변을 등록할 수 있습니다.