js jquery 팝 업 페이지 를 닫 고 부모 페이지 새로 고침 (window. opener)

6592 단어 전단jsjquery
function Closepage() {
    if (window.opener && !window.opener.closed) {
        window.parent.opener.location.reload();
    }
    window.close(); return false;
}

다른 방법 은 참고 할 수 있다.
window. opener 사용법
http://www.cnblogs.com/zhangzt/archive/2009/12/24/1631253.html
 
 
window. opener 는 실제로 window. open 을 통 해 열 린 창의 부모 창 입 니 다.
예 를 들 어 부모 창 parentForm 에서 window. open ("subForm. html") 을 통과 하면 subform. html 에서 window. opener.
parentForm 을 대표 하여 부모 창의 값 을 설정 하거나 js 방법 을 호출 할 수 있 습 니 다.
예 를 들 어: 1, window. opener. test (); ---부모 창의 test () 방법 을 호출 합 니 다.
    2. window. opener 가 존재 한다 면 parentForm 에서 stock Box 의 값 을 설정 합 니 다.
    if (window.opener && !window.opener.closed) {
       window.opener.document.parentForm.stockBox.value = symbol;
}
 
1 > window. opener 의 용법
일반적인 용법 에 서 는 창 을 닫 을 때 팝 업 창 을 알 리 지 않 고 해결 하 는 데 만 사 용 됩 니 다.   그것 에 대한 더 깊 은 이 해 는 일반적으로 비교적 적다.그것   진실 하 다   window. opener 는 window. open 방법 을 호출 하 는 창 을 말한다.     업무 중 에는 주로 부분 제출 을 해결 하 는 데 쓰 인 다.이런 크로스 오 버 작업 은 업무 에 매우 도움 이 된다.메 인 창 에 페이지 를 열 었 고 메 인 창 을 새로 고치 기 를 원한 다 면 이 걸 로 페이지 를 여 는 window. opener 는 메 인 창의 window 에 해당 합 니 다.주 창의 새로 고침 은 window. opener. location. reload () 를 사용 할 수 있 습 니 다.만약 가상 디 렉 터 리 를 사용한다 면: 예 를 들 어 struts 의 *. do 는 다시 시도 하 라 고 알려 줄 것 이다.
이렇게 window. opener. yorformname. submit () 로 바 꿀 수 있 으 면 좋 겠 어 요.
2〉
애플 리 케 이 션 에 서 는 A 창 에서 B 창 을 열 고 B 창 에서 작업 이 끝 난 후 B 창 을 닫 는 동시에 A 창 을 자동 으로 새로 고침 하 는 경우 가 있 습 니 다.
function closeWin(){          hasClosed = true;          window.opener.location="javascript:reloadPage();";          window.close();      }      function window.onbeforeunload(){          if(!hasClosed){              window.opener.location="javascript:reloadPage();";          }      }
위의 코드 는 B 창 을 닫 을 때 오 류 를 알려 줍 니 다. Object 가 부족 하 다 고 합 니 다. 정확 한 코드 는 다음 과 같 습 니 다: function closeWin () {         hasClosed = true;          window.opener.location="javascript:reloadPage();";          window.opener=null;          window.close();      }      function window.onbeforeunload(){          if (! hasClosed) {/ closeWin 방법 이 실행 되 었 다 면 이 방법 을 실행 하지 않 습 니 다.             window.opener.location="javascript:reloadPage();";          }      }
reloadPage 방법 은 다음 과 같 습 니 다: function reloadPage () {         history.go(0);          document.execCommand("refresh")          document.location = document.location;          document.location.reload();      } PS: 창 을 정상적으로 닫 고 강제로 닫 는 것 을 지원 해 야 하기 때문에 이 벤트 를 포착 할 수 있 습 니 다. 전역 변수 hasClosed 를 사 용 했 습 니 다.
==============================================
부모 창 이 frame 일 때 부모 창 을 새로 고 칠 때 문제 가 발생 할 수 있 습 니 다.
페이지 를 새로 고 칠 수 없습니다. 정 보 를 재 설정 하지 않 고 다음 과 같이 수정 할 수 있 습 니 다.  window. opener. parent. document. frames. item ('mainFrame'). location. href = window. opener. location. href; 자체 적 인 reload () 방법 을 실행 할 필요 가 없습니다. 더 이상 사족 을 그리 지 않도록 주의 하 세 요.
window.opener.parent.document.frames.item('mainFrame').location.reload();
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =         hasClosed = true;               window.opener.parent.document.frames.item('mainFrame').location.href = window.opener.location.href;               window.opener.location = "javascript:reloadPage();";               //window.opener.top.mainFrame.location="javascript:reloadPage();";          //self.opener.frames.mainFrame.location.reload(true);          window.opener = null;          window.close();      }      function window.onbeforeunload(){          if (!hasClosed) {                       window.opener.parent.document.frames.item('mainFrame').location.href = window.opener.location.href;                       window.opener.location = "javascript:reloadPage();";                       window.opener = null;          }      } window. opener 에 대하 여
window. opener 의 용법
    window. opener 는 현재 창 을 만 드 는 그 창의 인용 을 되 돌려 줍 니 다. 예 를 들 어 a. htm 에 있 는 링크 를 클릭 하여 b. htm 를 열 었 습 니 다. 그리고 우 리 는 b. htm 에 값 을 입력 하고 a. htm 에 있 는 id 를 'name' 인 textbox 에 부여 하려 고 합 니 다.
    window. opener. document. getElement ById ("name"). value = "입력 한 데이터";
    javascrīpt 의 window. opener 는 잘 이해 하지 못 했 습 니 다.
    왜 프레임 에서 사용 할 수 없습니다. 팝 업 창의 부모 창 은 프레임 안의 한 페이지 에 있 을 수 없 습 니까? 팝 업 창 을 통 해 프레임 의 부모 창 을 어떻게 조작 합 니까?
    opener. parent. frames ['frameName']. document. all. input1. value 이것 을 시도 해 보 세 요:)
 
 
 
window. open 을 올 바 르 게 사용 하여 대상 을 되 돌려 주 는 opener      
모두 가 알 고 있 는 자바 스 크 립 트 중:
var win = window. open (url, windowName,...); 의 사용,
win. opener 는 부모 창 을 가리 키 는 참조 입 니 다.
하지만 특별한 경우 가 있다.
두 개의 창 이 있다 면 window 1 과 window 2
다음 단계 로 실행:
var win = window.open(url,windowName,...);// (window1)
var win = window.open(url,windowName,...);//(window2)
두 번 연속 으로 열 린 하위 창의 windowName 과 같 습 니 다.
이때 당신 은 window 2 에 있 는 win. opener 가 window 2 를 가리 키 는 것 이 아니 라 window 1 을 가리 키 는 것 을 발견 할 수 있 습 니 다.
하위 창 에서 부모 창 을 닫 으 려 면 올 바 르 지 않 습 니 다. 따라서 위의 실행 방법 은 다음 과 같 습 니 다.
var win = window.open(url,windowName,...);? (window1)
win.opener = window;
var win = window.open(url,windowName,...);? (window2)
win.opener = window;
이렇게 수정 해 야 OK.
   
 
 
 
 
window. show Modal Dialog 나. show ModelessDialog 를 통 해 팝 업 된 페이지
이 경우 두 가지 절차 가 필요 합 니 다. 1. 부모 창, show Modal Dialog 또는. show ModelessDialog 방법의 두 번 째 매개 변 수 는 window 대상 을 전달 합 니 다. 예 를 들 어 window. show ModelessDialog ('a. htm', window), 2. a. htm 에서 window. dialog Arguments 를 통 해 이 매개 변 수 를 얻 을 수 있 습 니 다. 예 를 들 어 window. dialog Arguments. fun 1 (); PS: 하위 창 은 window. returnValue 설정 페이지 를 통 해 값 을 되 돌려 줄 수 있 습 니 다. 예 를 들 어 window. returnValue = 'OK', window. close ();
strRtn=window.showModalDialog(......)
이때, strRtn = 'ok'
 
페이지 에서 구현: 부모 페이지 function reloadPage () {         document.form1.submit();      } 팝 업 페이지 호출 closeWin (); function closeWin () {         hasClosed = true;          window.opener.location="javascript:reloadPage();";          window.opener=null;          window.close();      }
 
다음으로 이동:https://www.cnblogs.com/xdot/p/4791448.html

좋은 웹페이지 즐겨찾기