본문 바로가기
IT/자바스크립트

JSP 자식창에서 부모창 함수 호출

by 불멸남생 2024. 1. 10.

JSP(JavaServer Pages)에서 자식 창에서 부모 창의 함수를 호출하려면 JavaScript를 사용해야 합니다. 아래는 간단한 예제 코드입니다.

 

부모 창(parent.jsp)

<html>
<head>
    <script>
        function parentFunction(message) {
            alert("부모 창 함수 호출됨: " + message);
        }
    </script>
</head>
<body>
    <button onclick="openChild()">자식 창 열기</button>

    <script>
        function openChild() {
            // 자식 창 열기
            window.open("child.jsp", "_blank", "width=400, height=300");
        }
    </script>
</body>
</html>
반응형

자식 창(child.jsp)

<html>
<head>
    <script>
        function callParentFunction() {
            // 부모 창의 함수 호출
            window.opener.parentFunction("자식 창에서 호출됨");
        }
    </script>
</head>
<body>
    <button onclick="callParentFunction()">부모 창 함수 호출</button>
</body>
</html>
반응형

이 예제에서는 부모 창(parent.jsp)에 parentFunction이라는 JavaScript 함수가 정의되어 있습니다. 부모 창에서는 버튼을 클릭하면 자식 창(child.jsp)이 열리도록 되어 있습니다. 자식 창에서는 callParentFunction이라는 함수를 호출하면 부모 창의 parentFunction이 실행되며, 메시지가 알림 창으로 표시됩니다.

 

주의: 이 방법은 보안 상의 이유로 팝업 창이 차단될 수 있습니다. 브라우저의 팝업 차단 설정을 확인하고 필요에 따라 수정해야 합니다. 최근의 웹 표준은 팝업 차단을 강화하고 있으므로 사용자 경험을 고려하여 다양한 상황에 대비하는 것이 좋습니다.

반응형