2009-06-22 28 views
2

我有一個ASP.NET頁面,其中有一個asp.net按鈕控件。當用戶點擊按鈕時,頁面會進行一些計算然後關閉,但是當我在回發期間點擊按鈕時,頁面會顯示一個空白屏幕。我想顯示一個加載消息而不是這個。我使用javascript來顯示一個隱藏在屏幕上的div,並在用戶單擊該按鈕時顯示,但當回發發生時,屏幕變爲空白。任何想法如何在這種情況下顯示加載消息?ASP.NET,顯示加載消息,同時回發

在此先感謝。

回答

2

你真的需要避免ASP.NET AJAX或JQuery的?

如果是這樣的話:將繁重的處理移動到一個不可見的IFRAME。將表單動作到不可見的IFRAME,或者使用javascript設置IFRAME的位置。

您的'loading'javascript將顯示正常。當IFRAME內部的表單完成時,只需輸出一些javascript來告訴'父'進行定位或刷新。

1

基本上,你不能只使用回傳。瀏覽器在等待服務器響應的同時繪製白色屏幕。用戶點擊按鈕時顯示的消息是正確的方法(這麼好的工作)。

但瀏覽器畫了白色的屏幕,想着:「哦,我男孩,我即將得到迴應!」然後等待超過您認爲合適的時間。

您可以嘗試的唯一方法就是在響應中首先將瀏覽器加載其他消息(如gmail加載屏幕)時可以顯示的某種加載消息流式傳輸到瀏覽器。但個人而言,我認爲你可以花時間做一些其他的事情。

雖然你可以嘗試其他技術與AJAX。

2

如果您使用Ajax異步回發到表單,則可以使用UpdateProgress控件。下面是一篇文章,解釋如何實現功能的鏈接:

How to make a Gmail-like loading indicator with ASP.NET Ajax

+0

我沒有使用ASP.NET AJAx – Shyju 2009-06-22 01:47:10

+0

是否有你不想使用Ajax的原因?這很容易實現,特別是因爲你已經使用了asp.net。 – DaveK 2009-06-22 02:54:31