我需要更新一對舊的經典asp頁面— a search.asp
頁面,該頁面提供了一個簡單的表單,然後將其發佈到results.asp
頁面。搜索頁面上的表單選項之一是「格式」的下拉列表(<select
)。如果用戶選擇excel格式,結果頁面將Response.ContentType設置爲application/vnd.ms-excel
,並添加一個content-disposition標頭來設置文件名並將其作爲附件。就是這樣:它能夠正確渲染html,並且通常做得非常好。下載完成時觸發javascript代碼
所有這些工作都很好,除了一件事。 Excel選項的原因在於,在這種情況下,用戶確實希望爲單個搜索查看多達10,000個項目甚至更多。他們將使用Excel對結果進行一些額外的分析。所以搜索操作通常需要一分多鐘,我無法改變這一點。
那一分鐘內的用戶體驗並不理想。用戶不僅僅坐在那裏幾乎沒有任何反饋,但通常有足夠的結果讓頁面溢出響應緩衝區。這意味着頁面必須定期刷新,因此文件立即開始下載,但下載管理器本身無法提供有意義的反饋。我的任務是改善這種狀況。
第一步是在表單提交時在搜索頁面上僅顯示一條簡單的processing...
消息,我可以輕鬆地做到這一點。事實上,它已經爲「HTML」格式選項做了這個。問題是,當下載Excel文件時,我不知道如何告訴下載的任何內容,所以我可以再次隱藏該消息,現有的實現根本沒有提供任何關於下載進度的反饋。有任何想法嗎?如果我可以在下載完成時觸發一個JavaScript函數來觸發,我可以將任何東西都掛鉤,但我甚至無法完成此操作。
更新:
我重新提出了這個問題,試圖更清楚地提出問題。
將不起作用:看到我更新的問題。 – 2008-11-25 00:55:44