2

これはおそらく簡単な質問ですが、ASP.NET で AJAX ローダーを使用して、ページの作成中に読み込みダイアログを表示するにはどうすればよいでしょうか?

現在、ProgressTemplate に読み込みメッセージと gif を含む UpdateProgressPanel が関連付けられた UpdatePanel があります。

現在、onLoad() がビジネスエンティティを取得して表示するページがあります。これを行っている間、AJAXローダーを表示したいと思います。

ページの読み込みには何もせず、onLoadComplete または unLoad() でトリガーされる非表示のボタンを設定し、ボタンのクリック メソッドが UpdateProgressPanel の表示を完了するのを待つ方がよいでしょうか?

4

4 に答える 4

8

.Net 以外の HTML で実行できます。ASPX ページには、次のようなコードがあります。

<div id="loading"> 
<!-- アニメーション GIF または何かが起こっていることを示すその他の表示 -->
</div>

ページの一番下の の直前に、次のようなコード スニペットを配置できます。

<script language="javascript"> 
document.getElementById("loading").style.display = "none";
</script>

グラフィックは、ページの上部にある限り、最初にレンダリングされます。次に、すべての onLoad 処理が実行され、ページの下部にあるインライン JavaScript が最後に実行されます。

多くの場合、アンロードされた状態でボタンを無効にし、一番下の JavaScript でも有効にします。これにより、ページの準備が整う前に、ユーザーがクリックして満足してイベントをトリガーすることができなくなります。

于 2008-10-28T18:52:02.690 に答える
0

きめ細かい制御が本当に必要な場合は、プログレスバーベースのAJAXプリローダーを使用できます。状態が変化するたびに完了するように構成できます。つまり、0から4(5つの準備完了状態)で、各状態が20%進行します。作成は非常に簡単です。状態ごとに20%刻みで0から100%まで変化する別のコンテナdivを保持するコンテナを用意します。内側に背景色(例:青)を追加して、進行中のように見せます。Gmailは、プリローダーにも同様のアプローチを使用していると思います。divwidthdiv

于 2010-05-23T11:19:46.320 に答える
0

投稿は古いですが、 http://ajax.net-tutorials.com/controls/updateprogress-control/を見ることができます

于 2012-01-16T12:35:14.727 に答える
0

私は Timer コントロールで似たようなことをしました。OnLoad がタイマーをオンにするだけで、ページのレンダリングが終了します。次に、タイマー (最小限の間隔値を使用) が汚れた作業を行い、進行状況パネルを正しく表示します。プロセスの最後のステップとしてタイマーをオフにすることを忘れないでください。

于 2008-10-29T15:42:03.557 に答える