Redirect in new window

mercoledì 25 novembre 2009 - 09.59

fguida Profilo | Expert

Ciao...ho un vuoto di memoria; vorrei fare una redirect alla seconda aspx passando 1 parametro ma aprendola in una nuova pagina del browser...
Grazie
Francesco

FrancescoGuadagno Profilo | Senior Member

>Ciao...ho un vuoto di memoria; vorrei fare una redirect alla
>seconda aspx passando 1 parametro ma aprendola in una nuova pagina
>del browser...

Devi usare uno script javascript con la window.open. Il Response.Redirect(...) non permette di specificare un "contesto" diverso dalla pagina/scheda del browser in cui occorre l'evento. Il parametro lo passi tramite querystring
Response.Redirect("pagina2.aspx?par1=value

fguida Profilo | Expert

Si fin qui ci sono...solamente che il parametro da passar si trova in un oggetto DropDownList e quindi devo recupararlo per passarlo al javascript in questo caso.
Hai un piccolo esempio di codice?
Grazie
Francesco

TOPOAMORE Profilo | Expert

ciao visto che siamo in un contesto server ti conviene prelevare il valore e fare il redirect:

response.redirect(dropdown.selectvalue)

ho scritto a memoria senza verificare ma dovrebbe essere una cosa del genere+

ciaooo
ASP 2.0 - VB 2008

fguida Profilo | Expert

Come recuperare il valore lo so, il problema è creare la chiamata da javascript, con la quesrystring ed il parametro dinamico.
Grazie
Francesco

TOPOAMORE Profilo | Expert

ma perche vuoi fare la chiamata da javascript se sei in ambiente server?
ASP 2.0 - VB 2008

fguida Profilo | Expert

Perchè ho la necessità di aprire una nuova finestra del browser
Francesco

TOPOAMORE Profilo | Expert

Riesci a cerare il dropdown in html? nel senso sono campi predefiniti o caricati da db?
ASP 2.0 - VB 2008

fguida Profilo | Expert

Tutti i controlli in aspx son popolati tramite db...
Inoltre ho anche Ajax in mezzo quindi l'unica via è il recupero dei parametro tramite javascript , creazione url ed Open in nuova finestra

Francesco

TOPOAMORE Profilo | Expert

deswcrivimi il processo che compiono i componenti, in pratica l'iter del passaggio dati e la tecnologia utilizzata
ASP 2.0 - VB 2008

fguida Profilo | Expert

Pulsante "Dettaglio" : OnClick --> Redirect su pagina Dettaglio

Passagio di un parametro recuperato da una DDL che sarà indispensabile per la logica di costruzione della pagina figlia.

L'apertura deve avvenire su un nuovo Browser.

Spero sia chiaro...
Francesco

FrancescoGuadagno Profilo | Senior Member

>Pulsante "Dettaglio" : OnClick --> Redirect su pagina Dettaglio
>
>Passagio di un parametro recuperato da una DDL che sarà indispensabile
>per la logica di costruzione della pagina figlia.
>
>L'apertura deve avvenire su un nuovo Browser.

ripeto, l'unico modo è js.

ClientScriptManager.RegisterStartupScript("openPage", "<script>window.open 'pagina.aspx?mypar='"+ dropdown.SelectedValue ",'newPage');</script>")

Controlla bene la firma del metodo perchè non ricordo con precisione quali sono i parametri (sono cambiati da quando si utilizza la classe ClientScriptManager). In ogni caso lo script js dovrebbe essere corretto.

TOPOAMORE Profilo | Expert

Ciao,
allora recuperati il nome controllo server nella chiamata client

var url="pagina.aspx?param="+ document.getelementbyid("<%=dropdown.clientid%>").value; window.open(url,'Pagina');

Prova e facci sapere
ASP 2.0 - VB 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