我在我的項目中遇到了問題。我有2個網頁,網頁xxx爲輸入,網頁爲yyy爲輸出。處理時間爲2分鐘,所以當我點擊網頁xxx上的按鈕後,顯示爲白色,等待處理結束並顯示網頁yyy。在點擊按鈕和頁面加載後顯示加載圖片
如何取代加載圖像的白色空白,並在網頁yyy完成處理後消失?我做了一些研究和例子是這樣的代碼
function onReady(callback) { var intervalID = window.setInterval(checkReady, 60000); function checkReady() { if (document.getElementsByTagName('body')[0] !== undefined) { window.clearInterval(intervalID); callback.call(this); } } }
的例子是從本網站http://jsfiddle.net/MrPolywhirl/cbLsc81f/
- 哪裏把代碼和CSS顯示加載屏幕?在網頁xxx或網頁yyy上?
我很困惑如何實施js到我的項目。我需要你的幫助
謝謝你提前。
UPDATE。
這個代碼是如何從xxx
public void GenerateReport()
{
System.Collections.Specialized.NameValueCollection collections = new System.Collections.Specialized.NameValueCollection();
collections.Add("ID", Session["ID"].ToString());
string remoteUrl = "WebfrmReport.aspx";
string html = "<html><head>";
html += "</head><body onload='document.forms[0].submit()'>";
html += string.Format("<form name='PostForm' method='POST' action='{0}' style='display:none;'>", remoteUrl);
foreach (string key in collections.Keys)
{
html += string.Format("<input name='{0}' type='text' value='{1}'>", key, collections[key]);
}
html += "</form></body></html>";
Response.Clear();
Response.ContentEncoding = Encoding.GetEncoding("ISO-8859-1");
Response.HeaderEncoding = Encoding.GetEncoding("ISO-8859-1");
Response.Charset = "ISO-8859-1";
Response.Write(html);
Response.End();
}
這取決於從xxx如何頁面YYY加載以及如何請求發送到服務器。但大多數情況下,它會在第xxx頁上等待,直到它從服務器獲得響應,因此將它放在xxx頁面上 –
您能告訴我更多詳細信息嗎?來自xxx的請求使用'Response.Write(stringHTML)'並且在頁面yyy上,處理在Page_Load上。調用存儲過程並將其顯示在ReportViewer上。這個進程調用SP需要很長時間才能完成 – user1008497
BTW,等待2min對用戶來說體驗不是很好。 恕我直言,請求和稍後觀看對用戶更好。這只是意見。 – lv0gun9