Newsgroup: it.comp.lang.javascript
Titolo: Aprire popup, trasferire dati di un form, chiudere e caricare una nuova pagina nella finestra principale

Salve a tutti,
	mi scuso del tipolo così lungo ma almeno ho detto tutto ciò che mi serve.
Attualmente, appena viene cliccato il bottone del submit, tramite 
javascript faccio aprire una nuova finestra, faccio eseguire del codice 
e poi chiudo la finestra e faccio il reload della pagina principale. La 
procedura funziona ma non è quello che voglio io.
Io mi aspetto di fare una cosa simile.
Clicco sul bottone del submit, si apre un POPUP che si carica tutto il 
contenuto del form inviato, esegue le stesse istruzioni che fa ora e poi 
si chiude facendo caricare una pagina diversa nella scheda o finestra 
principale del browser.
Vi posto il codice che ho ora.
Nella pagina principale col form:
<script language="Javascript">
function Conferma(){
	target_link = "new_window.asp"
	document.forms["tipo"].encoding ="multipart/form-data"
	document.forms["tipo"].target="_blank"
	document.forms["tipo"].action = target_link
         document.forms["tipo"].submit();
}
</script>
[cut]
<form name="tipo" action="" method="post">
[cut]
	<input name='id' type='hidden' value=''>
	<input name='codice' type='text' value='12'>
	<input name='file' type='file' value=''>
	<a href="#" onClick="javascript:Conferma()">
[cut]
</form>
E già qui... io apro la nuova finestra. Ma si può trasferire un dato 
utilizzando la window.open per aprire un popup?
Ora il codice messo nella nuova pagina che dovrebbe nella teoria fare un 
redirect invece di un reload.
<script>
	window.close();
	if (window.opener && !window.opener.closed) {
		window.opener.document.location.reload();		
	}
</script>
Attualmente faccio il reload. Ma ho provato anche con 
window.opener.document.location.href='pippo.asp' e la pagina principale 
effettivamente fa qualcosa ma sulla barra dell'indirizzo alla fine 
dell'indirizzo principale mi mette #pippo.asp invece di fare il redirect.
Qualche aiuto?
Grazie!

 dell'indirizzo principale mi mette #pippo.asp invece di fare il redirect.
strano ... location è comunque un oggetto dell'oggetto window, non del
document; quindi opener.location.href="pippo.asp"

 document; quindi opener.location.href="pippo.asp"
No qui ho risolto. L'errore stava proprio nel chiudere prima la pagina e 
poi far eseguire altro codice.
Per quanto riguarda i dati contenuti nel form ho la necessità di 
sfruttare proprio l'invio dei dati tra la pag principale e la nuova 
pagina. Se trasferissi il contenuto dei campi via querystring, la 
procedura non andrebbe a buon fine. La pagina che si apre fa una 
"Request.TotalBytes" percui con la querystring questi dati non li potrei 
avere.

 avere.
sì, ma non hai risolto alla mia domanda: "trasferire un dato = " ?
se devi per forza passarli via form-post lato client non hai modo di
leggerli in alcun modo ...
-- 
"Non sai che ci vuol scienza
 ci vuol costanza
 ad invecchiare senza maturità"
									    F.G.

 leggerli in alcun modo ...
La pagina principale non fa altro che contenere un form che una volta 
riempito richiama una seconda pagina ASP. In questa pagina viene 
richiamata una classe per l'upload del file immesso. Questa classe fa 
praticamente una request.form della pagina principale. Percui se io non 
uso il post ma una querystring, la classe non funziona e alcune 
variabili tipo il TotalBytes io non le posso conoscere.
Per questo mi servirebbe un metodo per fare aprire un popup che comunque 
abbia la possibilità di intercettare i dati con la request.form .
Che ne dici? Si può fare?

 Che ne dici? Si può fare?
mi spiace ma non capisco: non stai già "intercettando" i dati (nel tuo caso
il file) con la request.form? (se intendi client-side no, via POST non è
possibile leggere i dati inviati)
-- 
"Capivamo di essere tanti
 capivamo di essere forti,
 il problema era solamente
 come farlo capire ai morti."
									    C.L.

 possibile leggere i dati inviati)
Qui ho trovato la risposta alle mie domande. In pratica l'esempio apre 
un popup e poi fa il submit del form nel popup. Non so se me lo avessi 
consigliato anche tu ma questo esempio funziona. ;)
http://free-script.it/post/Script_javascript_Inviare_i_dati_di_un_form_a_una_popup-40.htm