OnInputprocessing을 통한 팝업창 닫기
1. 목적 : 팝업창을 띄우고, 버튼눌러 저장하고 버튼눌러 팝업창 닫기를 한번에 하고 싶었음.
2. 방법 1
가. 팝업창은 동일하게 띄움.
나. 저장+닫기 버튼을 생성
다. OnInputprocessing에서 close 페이지 navigation->goto_page() 로 이동
라. close page에서 onLoad시 window.close() 스크립트 실행
마. 추가로 상태 업데이트를 위해, Opener 페이지 reload 시켜 줌.
[#M_Close 페이지 소스|접기|
<html>
<head>
<title>Close</title>
</head>
<body onload=“reload();window.close();”></body>
</html>
<script language=“javascript”>
function reload()
{
try{
opener.reload();
}catch(e){}
}
</script>_M#]
[#M_Close 페이지 소스2|접기|
<html>
<head>
<title>Close</title>
</head>
<body onload=”reload_close();”></body>
</html>
<script language=”javascript”>
function reload_close()
{
window.opener.location.reload();
window.close();
}
</script>
_M#]
3. 방법 2
가. 팝업창을 띄우고, OnInputprocessing 처리
나. 결과 메시지를 생성하여 Layout 에서 출력
다. Layout 에서 메시지 출력 후, close script 작성
[#M_Close 페이지 소스3|접기|
<script language=”javascript”>
function fn_close(){
try{
opener.reload();
}catch(e){}
self.close();
}
</script>
<%
IF lv_message IS NOT INITIAL.
%>
<script language=”javascript”>
alert(“<%= lv_message %>”);
fn_close();
</script>
<%
ENDIF.
%>
_M#]
참고 URL : http://scn.sap.com/thread/1181162