2012-06-22 7 views
0

В моей странице JSP родительской я использовал:всплывающего окна не закрывается после родительского окна перезагрузки

function popUpClosed() { 
    window.location.reload(); 
} 

И в детстве (всплывающее окно) Я использовал:

<script type="text/javascript"> 
     window.onunload = function() { 
       if (window.opener && !window.opener.closed) { 
       window.opener.popUpClosed(); 
       } 
     }; 
</script> 

по этому коду родительское окно перезагружается после вставки данных из всплывающего окна, но всплывающее окно не закрывается, я должен вручную закрыть всплывающее окно. Как всплывающее окно может быть закрыто?

ответ

0

Чтобы закрыть окно в вашем всплывающем окне изменить код следующим образом:

<script type="text/javascript"> 
     window.onunload = function() { 
       if (window.opener && !window.opener.closed) { 
       window.opener.popUpClosed(); 
       } 
       window.close(); 
     }; 
</script> 

См здесь: How to close the current window. onunload вызывается всякий раз, когда ваша страница выгружается. Если вы отправляете данные, кнопкой отправки вы выгружаете документ.

Это не то же самое, что закрывать окна. Если вы хотите, чтобы захватить только закрыть окна, вы должны использовать что-то вроде:

window.onbeforeunload = windowExit; 
function windowExit(){ 
    //do somethng 
    //check that you are not submitting. 
} 
+0

После перезагрузки родительского окна я, чтобы закрыть всплывающее окно. Я новичок в JS. Пожалуйста, можете сказать мне, где поставить свой код и где внести изменения в мой код. СПАСИБО ... – sam

+0

Я изменил свой ответ, взгляните. Это должно закрыть всплывающее окно. – nunespascal

+0

onunload и onbeforeunload захватывают одно и то же событие события окна, onbeforeunload только выполняет перед onunload. – Ian

0

Вот два примера функций, которые открывают и закрывают всплывающее окно. Если вы создадите свое окно внутри переменной, вы можете настроить таргетинг на открывшееся окно, то есть вы можете закрыть его.

<script> 
function openWin() 
{ 
    myWindow=window.open("","","width=200,height=100"); 
    myWindow.document.write("<p>This is 'myWindow'</p>"); 
} 

function closeWin() 
{ 
    myWindow.close(); 
} 
</script> 
Смежные вопросы