Redirect dopo respos.write

venerdì 15 luglio 2011 - 11.05

netting Profilo | Junior Member

VOglio effettuare il redirect attraverso response.redirect() dopo il messaggio che avviene in seguito all'istruzione response.write.
Se metto l'istruzione di redirect dopo quella di response.write la pagina viene subito reindirizzata e quindi non mi compare il messaggio.
Come posso risolvere il problema?
Non utilizzando javascript in quanto utilizzando asp.net c# devo fare questa operazione lato server .

Gluck74 Profilo | Guru

se avessi scritto in arabo, sarebbe stato la stessa cosa.

piegati meglio e cerca di descrivere la tua necessità

____________
Ricordati di utilizzare il tasto "Accetta" se i nostri consigli ti sono serviti a risolvere il problema.
È il modo per ringraziare chi ti ha aiutato.

netting Profilo | Junior Member

scusami forse la fretta :)
Allora in pratica voglio effettuare il redirect ad un'altra pagina attraverso l'istruzione response.redirect solo dopo però che mi compare a video una message box attraverso l'istruzione response.write.
Quindi io mi ritrovo con queste due istruzioni :

Response.Write("<script>alert('Cancellazione effettuata con successo! </script>");
Response.Redirect("home.aspx");

come puoi immaginare io in questo modo non vedo il messaggio ma vengo subito reindirizzato alla pagina home.aspx.

Gluck74 Profilo | Guru

be certo, il codice "lato server" viene eseguito prima del codice "sul client".....
string scriptClient = @" <script> alert('Cancellazione effettuata con successo!'); document.location.href = 'home.aspx'; </script>"; Response.Write(scriptClient);

O meglio ancora, per essere proprio .NETtiani, invecie del response.write

ClientScript.RegisterStartupScript( this.GetType(), "conferma", scriptClient , true);


____________
Ricordati di utilizzare il tasto "Accetta" se i nostri consigli ti sono serviti a risolvere il problema.
È il modo per ringraziare chi ti ha aiutato.

alexmed Profilo | Guru

Ciao e scusate l'intromissione.
Io ho provato così e sembra funzionare:

<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="alert('Cancellazione effettuata con successo!');" PostBackUrl="~/Default.aspx" />

Ciao

alexmed

netting Profilo | Junior Member

Ho risolto il questo modo :)

this.ClientScript.RegisterStartupScript(this.GetType(), "Some Title", "<script language=\"javaScript\">" + "alert('Cancellazione effettuata con successo!');" + "window.location.href='Home.aspx';" + "<" + "/script>");
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-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5