메뉴 건너뛰기

조회 수 12242 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

jQuery Ajax를 통해 전송된 데이터를 Controller에서 List 객체로 받기

아래는 체크박스를 선택하여 jQuery를 통해 대상 항목들을 List 형태로 넘겨받기 위한 처리임 배열로 받아도 되지만 List로 받아야할 상황에서 구현함

 

html 부분

<div id="facilitiesInfoFileListDiv">
    <div class="checkbox">
        <input id="atchFileIdList0" name="fileSn" value="2" type="checkbox">
        <label for="atchFileIdList0">mou.jpg</label>
    </div>
    <div class="checkbox">
        <input id="atchFileIdList1" name="fileSn" value="3" type="checkbox">
        <label for="atchFileIdList1">korea.png</label>
    </div>
</div>
<div class="overflow-hidden">
    <a href="javascript:void(0)" id="deleteFacilitiesInfoFileBtn" class="btn btn-default btn-delete pull-right">선택삭제</a>
</div>

 

jQuery 부분

/**
 * 파일 삭제 버튼을 누르면
 */
$('#deleteFacilitiesInfoFileBtn').click(function() {
    //등록할지 물어보기
    if (!confirm('사진을 삭제하시겠습니까?')) {
        return false;
    }

    //매개변수값 정리 : @RequestBody List fileVOList로 담기위한 사전 작업
    var arr = new Array();
    var obj = null;
    $('#facilitiesInfoFileForm input[name="fileSn"]:checked').each(function(i) { //check 된값 배열에 담기
        obj = new Object();
        obj.atchFileId = $('#facilitiesInfoFileForm input[name="atchFileId"]').val();
        obj.fileSn = $(this).val();
        arr.push(obj);
    });
  
    //입력값 전송
    $.ajax({
        url : contextPath+'/mgr/main/deleteFacilitiesInfoFile.ajax',
        type : 'POST',
        data : JSON.stringify(arr),
        dataType : 'json',
        contentType : 'application/json; charset=UTF-8',
        success : function(result) {
            //console.log("result : "+JSON.stringify(result));
            //console.log("message : "+result.message );
            alert(result.message);
        },
        error : function(request,status,error) {
            //console.log("code:"+request.status+"\n\n"+"message:"+request.responseText+"\n\n"+"error:"+error);
            //alert($(request.responseText.replace(/(\r\n|\n|\r)/gm,"")).text());
            alert("처리에 실패하였습니다.\ncode:"+request.status+"\n"+"error:"+error);
        },
        complete : function() {
            selectFacilitiesInfoFileList(); //시설정보 파일목록 새로 불러오기
        }
    });
});

 

JAVA 부분

/**
 * 이후 컨트롤러에서 해당 리스트를 받을 수 있었다
 */
@RequestMapping("/mgr/main/deleteFacilitiesInfoFile.ajax")
public @ResponseBody Map deleteFacilitiesInfoFile(@RequestBody List fileVOList) throws Exception {
    LOGGER.debug("fileVO.getFileVOList().size():"+fileVOList.size());
    fileMngService.deleteFileInfs(fileVOList);

    Map result = new HashMap();
    result.put("message", egovMessageSource.getMessage("success.common.delete"));
    return result;
}

List of Articles
번호 제목 날짜 조회 수
179 흐르는 배너 만들기2 2016.12.22 8361
178 화면 이동시에 레이어가 따라다니게 하기 2016.09.21 7143
177 행에 징검다리 스타일 입히기 (:odd, :even) 2021.03.31 210
176 항상 최신버전으로 사용하기 2021.03.26 284
175 항상 레이어가 정 가운데 위치하는 스크립트 2016.12.22 6908
174 하단 고정 레이어 스타일(CSS) 따라하기 2016.12.22 7732
173 페이지 이동 제어 - href, replace, pushState() 2018.09.06 2620
172 파일 업로드 방법, 이미지 파일 업로드 예제 소스 2017.03.06 9028
171 특정영역 제외하고 body 클릭 2018.09.28 3612
170 텍스트 필드에 기본글이 마우스 클릭하면 지워지게 하기 폼필드 소스 내에 아래 태그를 삽입한다. 2019.06.04 867
169 터치 디바이스 분기처리 2018.11.07 1278
168 키보드 이벤트가 발생한 객체의 id값 알아내기 2016.09.21 7530
167 최초 접속시 css와 script가 로딩되지 않을때 2021.03.25 322
166 체크박스 전체선택/해지 2019.06.04 790
165 체크박스 또는 라디오 버튼의 체크여부 변경하기 2016.09.21 6667
164 중복 없는 랜덤 2018.11.07 2017
163 제이쿼리에서 클래스(class) 이름 추가/삭제 2021.03.31 233
162 정규식, 한글 못쓰게 하기, replace all 2021.03.26 844
161 입력폼에 입력되는 값의 유효성 체크하기 두번째 file 2018.09.06 1835
160 이미지 회전, rotate(); 2020.11.25 1465
Board Pagination Prev 1 2 3 4 5 6 7 8 9 Next
/ 9

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved