[ad_1]
やあ、
別のページに response.redirect を実行する前に、(サーバー側からクライアント側に) メッセージを表示しようとすると問題が発生します。
問題は、メッセージを表示するコードを配置したことですが、ページには表示されず、リダイレクトは行われますが、メッセージは表示されません。
メッセージを表示するために使用しているコードは次のとおりです。
VB
sScript.AppendLine("<script type=""text/javascript"">") sScript.AppendLine(" alert('La operacion no ha sido exitosa');") sScript.AppendLine("</script>") ScriptManager.RegisterStartupScript(Me, Me.GetType, "AlertaJS", sScript.ToString, False)
sScript は文字列ビルダーです
サーバー側からクライアント側にメッセージを表示する他の方法はありますか?
ありがとう!
解決策 1
Response.Redirect を使用すると、ASP.NET がヘッダーを追加して 302 を発行し、オブジェクトが移動しました。 ブラウザーはヘッダーを処理し、新しい URL を要求するため、ページが実際に読み込まれる前に、このメソッドは機能しません。
次のようなアラートの後に JavaScript を追加できます。
window.location.href = 'http://my new location';
解決策 3
こんにちはシェリム、
Response.Redirect の前にメッセージを表示[^]
お役に立てば幸いです。
解決策 2
このヘッダーを使用してページにメッセージを配置します。
HTML
<meta http-equiv="refresh" content="5;url=Default.aspx" />
このページにリダイレクトします。
このヘッダーは、5 秒後に “default.aspx” にリダイレクトしますが、それ以前にメッセージを見ることができます。
例 :
HTML
<html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title>Access Denied</title> <meta http-equiv="refresh" content="5;url=Default.aspx" /> <link rel="Stylesheet" type="text/css" href="default.css" /> </head> <body dir="rtl"> <form id="form1" runat="server"> <div class="error"> <img alt="error" src="images\cross1.png" width=50 height=50 /> access denied.</div> <br /> <br /> <a href="Default.aspx">go to home page</a> </form> </body>
[ad_2]
コメント