Ho la tabella a.asp che visualizza dati da una tabella.
Un pulsante fa aprire un popup, b.asp.
b.asp aggiorna la tabella ed aggiorna il chiamante.
Il mio problema è che il chiamante, durante l'aggiornamento, perde il riferimento al popup: w = window.open("b.asp", "popup",...
e perciò, quando chiudo la finestra, non riesco a chiudere il popup, se non dopo averla riaperta.
Vi mando un pò di codice, funziona, ma ho la sensazione che si possa fare di meglio.
Grazie degli eventuali suggerimenti.
codice:
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
<SCRIPT ID=clientEventHandlersJS LANGUAGE=javascript>
<!--
var w = null;
var v_rileggo = false;
function button1_onclick() {
w = window.open("b.asp", "popup","left=200,top=100,width=300,height=300");
}
function rileggi()
{
v_rileggo = true;
document.form1.submit();
}
function window_onunload() {
//if(!v_rileggo) if (w != null && w.open) w.close();
/*per chiudere il popup alla chiusura del chiamante*/
if(!v_rileggo) {w = window.open("", "popup","left=10000,top=10000");if (w != null && w.open) w.close(); }
}
function window_onload() {
v_rileggo = false;
}
//-->
</SCRIPT>
<TITLE>a</TITLE>
</HEAD>
<BODY LANGUAGE=javascript onunload="return window_onunload()" onload="return window_onload()">
<INPUT type="button" value="Button" id=button1 name=button1 LANGUAGE=javascript onclick="return button1_onclick()"></p>
<%
'operazione su database
%>
<FORM action="" method=POST id=form1 name=form1>
</FORM>
</BODY>
</HTML>