Problemi con ritorno di una pop-up

mercoledì 19 agosto 2009 - 10.01

Mappa Profilo | Junior Member

Buon giorno a tutti.
ll mio problema è che apro una pop-up e passo alla pagina chiamante la variabile. Ma quando chiudo il pop-up la pagina chiamante perde tutti i campi inseriti precedentemente.

Codice pop-up
<script language="javascript">
function PopUp() {
var txtval = document.getElementById("DropRagSoc");
window.opener.document.location.href = "sitoweb?Nome=" + txtval.value ;
window.close();
}
</script>

Nella pagina chiamante intercetto il valore del pop-up con una
Request.QueryString("Nome").
Funziona tutto bene ma tutti i campi inseriti prima li perdo.
Come posso fare per evitare questo?
Grazie mille a tutti

luigidibiasi Profilo | Guru

Il popup apre una pagina a parte con una richiesta http a parte ed è normale che tu non riesca a leggere i dati (dalla pagina chiamante) utilizzando quel metodo... (anche perchè di norma tu non ricevi segnali di chiusura del popup, magari un dialog ma non è interoperabile)

Prendi in considerazione l'utilizzo delle dialog che vanno tanto di moda (quelle che si aprono in primo piano nella pagina stessa) evitando l'uso di window.open ma utilizzando i DIV, z-index e i filter opaque..

....
>> mod. mi è venuta così al volo... (non so se funziona)
Puoi provare a fare una cosa del genere ma non sò se funziona... (cerca di accedere al dom del popup)

var pop = window.open('url?param');
var myData = pop.document.getElemenentById("campo_da_recuperare").value..



Luigi Di Biasi
http://blogs.dotnethell.it/luigidibiasi/
http://www.dibiasi.it/

Mappa Profilo | Junior Member

ciao luigidibiasi grazie per la risposta.
Ho deciso di usare la finestra di pop-up, anche se non mi piacciono molto, ma per esigenza perchè ho carico dentro una listbox 9000 records di un anagrafico e lascirlo nella form principale rallentava tantissimo l'inserimento dei dati in particolare dopo un autopostback.
Mi interessa l'idea della "dialog" ma non le ho mai usate. Potresti brevemente spiegare cosa sono? Dove le trovo? Come IDE uso Visual Web DEv. 2008 express
Grazie ancora

luigidibiasi Profilo | Guru

Una cosa del genere...

http://www.huddletogether.com/projects/lightbox2/


Luigi Di Biasi
http://blogs.dotnethell.it/luigidibiasi/
http://www.dibiasi.it/

Gluck74 Profilo | Guru

Le soluzioni sono diverse e disparate.
SI può fare tutto in nuova finestre (window.open) usando sia javascript, che invio di form.
Si può usare uno dei tool javascript per creare finestre popUp (DHTML, javascript).
Si può usare Ajax per interagire con client e server (AJAXToolkit di microsoft o altri tool).


Dipende da cosa vuoi fare e come deve interagire l'utente. Se mi dici in maniera più dettagliata la tua esigenza, magari con un esempio,
possiamo scegliere qualcosa di bellino.
Se non ho capito male usi adirittura il vwd 2008?
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5