메뉴 건너뛰기

조회 수 12255 추천 수 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
번호 제목 날짜 조회 수
19 입력폼에 입력되는 값의 유효성 체크하기 두번째 file 2018.09.06 1835
18 정규식, 한글 못쓰게 하기, replace all 2021.03.26 846
17 제이쿼리에서 클래스(class) 이름 추가/삭제 2021.03.31 233
16 중복 없는 랜덤 2018.11.07 2019
15 체크박스 또는 라디오 버튼의 체크여부 변경하기 2016.09.21 6667
14 체크박스 전체선택/해지 2019.06.04 790
13 최초 접속시 css와 script가 로딩되지 않을때 2021.03.25 322
12 키보드 이벤트가 발생한 객체의 id값 알아내기 2016.09.21 7530
11 터치 디바이스 분기처리 2018.11.07 1278
10 텍스트 필드에 기본글이 마우스 클릭하면 지워지게 하기 폼필드 소스 내에 아래 태그를 삽입한다. 2019.06.04 867
9 특정영역 제외하고 body 클릭 2018.09.28 3612
8 파일 업로드 방법, 이미지 파일 업로드 예제 소스 2017.03.06 9028
7 페이지 이동 제어 - href, replace, pushState() 2018.09.06 2622
6 하단 고정 레이어 스타일(CSS) 따라하기 2016.12.22 7732
5 항상 레이어가 정 가운데 위치하는 스크립트 2016.12.22 6908
4 항상 최신버전으로 사용하기 2021.03.26 285
3 행에 징검다리 스타일 입히기 (:odd, :even) 2021.03.31 210
2 화면 이동시에 레이어가 따라다니게 하기 2016.09.21 7143
1 흐르는 배너 만들기2 2016.12.22 8361
Board Pagination Prev 1 ... 4 5 6 7 8 9 Next
/ 9

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

© k2s0o1d4e0s2i1g5n. All Rights Reserved