首页 > 开发 > 综合 > 正文

在搜索结果出来之前页面显示"等待中..."的做法

2024-07-21 02:29:08
字体:
来源:转载
供稿:网友

  在当前页面点击搜索按纽后,当前页的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页面就是你要的中间页了,上面写上“等待...”


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表