애용
365
2020-09-16 16:03:59
12
168

서로다른 페이지에서 div의 data-value값 가져오는법


안녕하세요 선배님들 초짜개발자입니다.

제목대로 서로다른 페이지이긴 하지만 하나는 페이지의 팝업창입니다.

부모창에서 DATAPICKER를 통해서 검색을통하여 두개의 날짜로 기간이 넘어가면 팝업창안에서의 액션이
실행되지않게 하고싶습니다.

<div id="startDt" class="smf-date" data-value="${dataBean.startDt}"></div>
            <div id="endDt" class="smf-date" data-value="${dataBean.endDt}"></div>
이게 부모창에서 날짜를 검색하는 코드인데
팝업창에서도 저날짜를 안보이게 사용하려면 어떻게 해야하는지 도움좀 주시면 정말 감사하겠습니다.
0
  • 답변 12

  • 초보자1212
    1k
    2020-09-16 16:12:05

    같은 엘리먼트에 부모랑 opener 랑 둘다 이벤트가 걸린거에요?

  • 애용
    365
    2020-09-16 16:15:00

    초보자1212

    아직 초보라서 무슨말씀이신지 자세히 모르겠어요 죄송해요 ㅠㅠ

  • 초보자1212
    1k
    2020-09-16 16:19:29

    startDt 나 endDt 에 부모에서 이벤트가 걸려있는것 같은데,

    제가 궁금한건 window.open 으로 열으신 창에서도 저 엘리먼트에 이벤트를 걸으셨는지가 궁금해요.

  • 애용
    365
    2020-09-16 16:30:04

    부모창에서는 달력을 사용하는데

    팝업창에서는 부모창의 검색조건만 가져와요 따로 날짜는 사용하지 않는데 맞는설명이된지 모르겠네요..

  • 초보자1212
    1k
    2020-09-16 16:41:56

    검색 조건만 가져온다는게 정확히 어떻게 가져온다는건지 알 수 있을까요?

  • 애용
    365
    2020-09-16 16:48:28

    엑셀변환을 실행하는 팝업창이라서 부모페이지의 데이터들을 가져옵니다.


    var condition = parent.VOC.getSearchCondition();
                    condition.xlsColumns = columnsCd + "|" + columnsNm; 
                    condition.xlsScope = xlsScope;
                    condition.xlsName = "기업민원_목록";
                    condition.CSRFToken = $("#csrfForm input[name=CSRFToken]").val();

    크롬 관리자모드를 보니 condition에 부모페이지에서 검색한 내용들이 담겨서 condition안에 startDt,endDt가 나오는건 확인하였는데

    기간이 4개월이 지나면 엑셀변환이 불가능하게 하고싶어서요

  • 초보자1212
    1k
    2020-09-16 16:52:13

    parent 는 window.open 으로 띄우신 곳 내에서

    window.opener 로 접근해서 가져오신 원래 부모창이라고 부르시는 것의 DOM 일까요?

  • 초보자1212
    1k
    2020-09-16 16:53:51

    팝업으로 띄운 창과 원래 있던 창끼리 통신하고 싶으시다는거로 들리긴하는데..

  • 애용
    365
    2020-09-16 16:57:29
    네 원래있던창과 버튼눌렀을때 열리는 팝업창이요..
  • 초보자1212
    1k
    2020-09-16 17:03:42

    팝업에서 부모로 찔러주는건 쉬운데

    그 반대는 저도 좀 찾아봐야할 것 같네요.

    뭔가 알게되면 공유할게요

  • 애용
    365
    2020-09-16 17:04:07


    var startDt = new Date($("input[name=startDt]").val());
                var endDt = new Date($("input[name=endDt]").val());
                var differ = endDt - startDt;
                    VOC.excelPop(510, 540);
                <%-- 10454400000: 4개월 DATE값 --%>
                if ( differ > 10454400000   ) {
                    alert("엑셀변환 기간은 최대 4개월까지 가능합니다. \n\n기한을 다시 확인하세요.");
                    return false;
                }
                else {
                } 

    추가로 말씀드리면 부모페이지에서 검색기간이 4개월이 지나면 팝업창이 아예나오지 못하도록 위의 코드를통해서 실행하였는데

    팝업창에서는 어떻게 해야할지 도무지 감이 안잡혀서요 ㅠㅠ

  • 애용
    365
    2020-09-16 17:04:24

    네 감사드립니다 좋은하루되세요

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