javascript 에서 새로 띄운 자식창과 부모창, iframe 내부와 메인페이지간의 제어 방법에 대한
다양한 예제를 학습해본다.
1. 자식창에서 부모창의 특정 Form 에 데이터를 집어넣고 싶을 때
자식창에서 부모창을 가리킬 때 opener 객체를 사용한다. document.Form.input 은 부모창에
속해있는 요소이다.
opener.document.Form.input.value = “값”;
2. 자식창에서 부모창의 페이지를 이동시키고 싶을 때
부모창을 원하는 페이지로 이동시킨후 자식창(자기자신) 은 닫는다.
window.opener.location.href = “/admin/login.jsp” ;
window.close();
3. 자식창에서 부모창을 새로고침하고 싶을 때
if (!opener.closed){
opener.document.location.reload();
window.close();
}
4. iframe 내부에서 외부에 있는 메인페이지의 특정 Form 에 값을 집어넣고 싶을 때
iframe 에서 메인을 가리킬때는 parent 객체로 접근한다.
parent.Form.input.value = “값”;
5. iframe 내부에서 외부에 있는 메인페이지의 스크립트 함수를 실행하고자 할 때
parent.[메인함수명]
parent.DoSend();
6. 메인에서 iframe 의 페이지를 이동시키고 싶을 때
[iframe 이름].location.href
frame.location.href=”www.naver.com”;
<iframe name=”frame”>
####
</iframe>
7. 위의 2가지 경우를 섞은것이다. 부모창의 iframe 에서 새창을 하나 띄웠다.
자식창에서 부모창의 페이지를 이동하고 싶은것이다.
이것은 부모창의 iframe 에 갔다가 메인으로 다시 이동해야한다.
2가지의 방법이 있는데 첫번째는 window.opener 를 호출하여 iframe으로간뒤
parent 로 메인에 접근한다.
window.opener.parent.location.href = “URL”;
두번째는 top 을 이용해서 부모창을 바로 찾는것이다
top.opener.location.href = “URL”;
'웹 프로그래밍 > 자바스크립트' 카테고리의 다른 글
Javascript 에서 jQuery API 를 이용한 버튼이벤트시 레이어 새창으로 표현 (0) | 2012.03.18 |
---|---|
Javascript 를 이용한 동적테이블 구성 (1) | 2011.04.14 |
javascript 에서 input 값에 숫자이외의 글 입력막기 (0) | 2010.11.19 |
javascript 의 showModalDialog 사용해서 새창 제어하기 (1) | 2010.08.07 |
Ajax 라이브러리 Dojo 에서 브라우저의 뒤로 /앞으로 가기 지원 (0) | 2009.07.05 |
Ajax 라이브러리 Dojo 에서 form 을 비동기적으로 submit 하기 (0) | 2009.07.05 |
Dojo를 이용해서 간단하게 Ajax 통신 구현 예제 (0) | 2009.07.05 |
Dojo 브라우저 툴킷 (0) | 2009.07.04 |