티스토리 뷰

AJAX에서

var seatNum = [];

 

배열로 저장된 데이터를 보낼려고 했을 때 컨트롤러에서 못받는 오류가 발생했다.

문제의 해결법은 간단하다.

traditional: true

 

추가해주면 컨트롤러에서 배열을 받을 수 있다.

AJAX

$.ajax({
        type: "POST",
        url: "/musical/reservation",
        data: { title: title, date: date, price: price, seat: seatNum },
        traditional: true,
        success: function(response) {
        //    window.location.href = "/";
        },
        error: function(xhr, status, error) {
            console.error("오류가 발생했습니다: " + error);
            alert("좌석을 선택해주세요.");
        }
        });

Controller

    @PostMapping("/reservation")
    public ModelAndView reservation2(MusicalDTO musicalDTO,
                                     @RequestParam("price") String price,
                                     @RequestParam("seat") String[] seat ){
        
        for(String seatNumber : seat){
            System.out.println(seatNumber);
        }

        ModelAndView mv = new ModelAndView();
        mv.setViewName("index");
        return mv;
    }
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2026/02   »
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
글 보관함