【解決方法】Web アプリケーションに待機中のメッセージを表示する


やあ

データがバックエンドから Excel シートに取り込まれるときに「読み込み中…」というメッセージを表示する必要があり、5 分以上かかります。データの取得が完了したら、このメッセージを画面から削除する必要があります。
JQueryの助けを借りて、ボタンをクリックするとメッセージを表示できます。

ASP.NET
<asp:Button ID="btnDownloadReport" Visible="true" runat="server" Text="Download" OnClientClick="$('.loading').show();" OnClick="btnDownloadReport_OnClick"/>

This is the DIV tag that is displaying the message.
<div class="loading" id="main" align="center"   runat="server">
<br />    
Loading. Please wait.<br />
<br />

問題は、データがフェッチされると、このメッセージを非表示にできないことです。
データをプルするメソッドの後に記述されたコードは実行されません。

C#
protected void btnDownloadReport_OnClick(object sender, EventArgs e)
{
    GetData();
    // any code written here is not getting executed
}

私を助けてください。 その少し緊急。 ありがとう。

解決策 1

スクリプトマネージャーを使用する

ScriptManager.RegisterStartupScript(this, typeof(string), "script",
 "$('.loading').hide();", true);

解決策 2

以下を使用して、サーバー側から JavaScript コードを挿入します。
MSDN: RegisterClientScriptBlock メソッド[^]
MSDN: RegisterStartupScript メソッド[^]

次のようなものを試してください:

C#
Page.ClientScript.RegisterStartupScript(Type.GetType("System.String"), "addScript", "HideLoadingImage()", true);

HideLoadingImage()、単に画像を非表示にします。

アップデート:
します。 ラベルが同じ更新パネルにある場合は、更新されます。

それでも問題が解決しない場合は、次の記事をご覧ください。 Ajax 更新後のページ コントロールへの JavaScript アクセス (更新パネル経由)[^]

コメント

タイトルとURLをコピーしました