it-swarm.com.de

JavaScript-Warnung vor der Umleitung in ASP.NET

Ich verwende den folgenden Code, um die Meldung während der Aktualisierung im Update-Bereich anzuzeigen

string jv = "alert('Time OutAlert');";
ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "msg", jv, true);

Es funktioniert gut.

Wenn ich jedoch Redirect danach verwende, wird die Seite geladen, ohne dass die Nachricht angezeigt wird. Ich möchte, dass der Benutzer die Nachricht sieht und sie nach dem Klicken auf "OK" umleitet.

string jv = "alert('Time OutAlert');";
ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "msg", jv, true);
Response.Redirect("~/Nextpage.aspx");
11
Rohit Chaudhari

Zeigen Sie die Warnung mit Javascript an und leiten Sie sie dann mit demselben weiter:

ScriptManager.RegisterStartupScript(this,this.GetType(),"redirect",
"alert('Time OutAlert'); window.location='" + 
Request.ApplicationPath + "Nextpage.aspx';",true);
27
Vishal Suthar

Sie können dies nicht tun, wie Sie es versuchen, da die Nachricht auf der Clientseite ausgeführt wird, aber Sie leiten den Code dahinter weiter, bevor die Seite geladen wird, um die Nachricht anzuzeigen.

Der Weg, dies zu tun, besteht darin, direkt nach der Nachricht eine clientseitige Umleitung aufzurufen als:

window.location = "NextPage.asps";
3
Aristos

Das funktioniert gut

                string message = "Upadate Successfull !!";
                string url = "/Post.aspx";
                string script = "{ alert('";
                script += message;
                script += "');";
                script += "window.location = '";
                script += url;
                script += "'; }";
                ScriptManager.RegisterStartupScript(this.Page, Page.GetType(), "alert", script, true);
0
Ashish