2010-01-22 26 views
1

還有其他類似的帖子,但他們都想要一個進度條。我不在乎。FileUpload狀態指示器ASP.Net C#

我可能會購買Ajax Uploader,但是我想知道是否有辦法讓用戶知道文件是否正在上傳。我嘗試了一個Ajax ProgressIndicator,但它不起作用...文件上傳部分工作,但進度內容不顯示。

這是我有沒有阿賈克斯:

<asp:FileUpload onchange="clickTheButton();" ID="FileUpload1" runat="server" /> 
<asp:Button ForeColor="#ffffff" BackColor="#ffffff" BorderColor="#ffffff" BorderWidth="0" 
       ID="Button1" runat="server" Text="Add Image" OnClick="AddImage_Click" /> 

只是一個文件上傳控件和上傳文件的按鈕。

我只需要一種方法讓用戶知道它正在忙於發送文件。

回答

4

爲什麼不創建這樣的頁面上的一些隱藏的元素:

<div id="loadingDiv" style="display: none;">Please wait, uploading file...</div> 

,然後上傳按鈕的OnClientClick,返回一個函數,像這樣:

function displayWaitingMessage(){ 
    document.getElementById('loadingDiv').style.display = 'block'; 
    return true; 
} 

應該顯示消息,然後繼續回發以上載文件。

0

只需以合理的時間間隔與Ajax查詢您的服務器,看看您嘗試上傳的文件是否存在,並根據響應顯示適當的指示。

+0

這是1-5秒的更多操作。我不認爲這種方法是有道理的。我只是想讓用戶知道正在發生的事情。只要文件上傳,它就會出現在數據專家中。我只需要點擊上傳...點擊時間和DataList被重新填充的時間。 – Jason 2010-01-22 02:04:09

+0

我有點困惑於你要求什麼。只需將一個Javascript事件附加到表單按鈕。點擊後,隱藏上傳控件並顯示一個指示上傳正在進行的元素。 – JoshJordan 2010-01-22 02:08:30

+0

好點。我已經太久了。 使用Uploadify結束。多個文件和它的簡單。雖然我想我會寫一篇關於如何在ASP.Net中使用它的文章,因爲沒有一篇文章讓每一步都清楚。如果我開始寫作,我會發佈一個鏈接。 – Jason 2010-01-22 02:35:51