程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> 如何在搜索結果出來之前,讓頁面顯示“等待中...”

如何在搜索結果出來之前,讓頁面顯示“等待中...”

編輯:.NET實例教程


在當前頁面點擊搜索按紐後,當前頁的button onclick事件會生成一個sql語句,然後轉到查詢結果頁面,由於查詢可能很費時間,客戶要求在這兩個頁面中加入一個提示用戶正在查詢,請等待的頁,
具體的查詢是在查詢結果頁面的Page_Load進行的。
現在的問題是這個中間頁面怎麼自動轉向查詢結果頁面,如果在Page_Load裡寫,這個中間頁就顯示不出來
有兩種比較中肯的解決方法:

第一種
1。可以做個公用的用戶控件,copy如下代碼,樣式自己定義
<div id='doing' style='Z-INDEX: 12000; LEFT: 0px; WIDTH: 100%; CURSOR: wait; POSITION: absolute; TOP: 0px; HEIGHT: 100%'>
<table width='100%' height='100%' id="Table1">
<tr align='center' valign='middle'>
<td >
<table  id="Table2" class="loading">
<tr align='center' valign='middle'>
<td>Loading...</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
<script language="Javascript">
function ShowWaiting()
{
document.getElementById('doing').style.visibility = 'visible';
}
function CloseWaiting()
{
document.getElementById('doing').style.visibility = 'hidden';
}
function MyOnload()
{
document.getElementById('doing').style.visibility = 'hidden';
}

if (window.onload == null)
{
window.onload = MyOnload;
}

</script>

2。在頁面中拖入用戶控件

3。在頁面中給button加客戶端click方法,如下
protected void Page_Load(object sender, EventArgs e)
{
        this.Button1.Attributes.Add("onclick", "ShowWaiting();");        
}

第二種

第一個頁面比如first.ASPx加入以下JS:
<script language="Javascript">
    <!--
var _tt;

function showSending() 
{_tt=window.open("processwin.ASPx",'uploadfileprocess',"toolbar=0,location=0,directorIEs=0,status=0,
menubar=0,scrollbars=1,resizable=1,top="+dispHeight+",left="+dispWidth+",width=410,height=200",true);           
return true;
          }
function closewin()
{
   if (_tt!=null)
   {
     _tt.close();
   }

}
//-->
</script>
<body bgColor="silver" onunload="closewin();">

然後,後台代碼first.ASPx.cs
page_load()時,檢索按鈕加入如下屬性:
btFileUpload.Attributes.Add("onclick","return showSending()");

processwin.ASPx頁面就是你要的中間頁了,上面寫上“等待...”

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved