前一阵做一个项目,在处理报表的时候时间偏长,客户提出要做出一个等待窗口提示用户等待(页面太久没反映,用户还以为死了呢)。在分析这一需求之后,觉得如果要实现像winform应用中的processbar太困难了。最后,只好模拟,做了一个“假”的等待窗体,还好客户也挺满意。

这个等待窗体实际上是利用了<object>标签完成的。因为动态效果由<marquee>完成,该等待窗体显示出来的时候,整个table是透明的,只有中间的过程条在动,后面的任何按钮都不能点击。

首先做一个静态页面:downloadExcel.html

<!-- .tborder { BORDER-RIGHT:#333333 2px solid; BORDER-TOP:#333333 2px solid; BORDER-LEFT:#333333 2px solid; BORDER-BOTTOM:#333333 2px solid; border-collapse:collapse; } .tborder1 { BORDER-RIGHT:#cccccc 3px solid; BORDER-BOTTOM:#cccccc 3px solid; border-collapse:collapse; } .dropShadow {filter:dropshadow(color=#a9a9a9,offx=2,offy=2,positive=true)} -->

报表生成中,请稍等...
 
               
 

然后在处理画面中加上这么一段:

<TABLE border="0" id="processBarMask" bgcolor="#cccccc" style="VISIBILITY:hidden; POSITION: absolute" cellspacing="0" cellpadding="0">
<TR>
<TD align="center">
<object type="text/x-scriptlet" id="objProcessBar" style="z-index:65535;" width="302" height="102" data="downloadExcel.html"></object>
</TD>
</TR>
</TABLE>

一开始是隐藏起来的。当点击处理按钮之后,就将它显示出来:

<SCRIPT language="javaScript">
var firstFlg = "0";

function processStart(){
with(document.all.processBarMask.style){
top = 0;
width = "100%";
height = "100%";
visibility = "visible";
}
document.all.processBarMask.focus();
}

function processEnd(){
document.all.processBarMask.style.visibility = "hidden";
}
</SCRIPT>

最后给处理按钮加上处理:

<input type="button" id="btnOK" value="OK" onclick="processStart()" style="width:80px">

ASP.NET制作一个简单的等待窗口的更多相关文章

  1. PureMVC和Unity3D的UGUI制作一个简单的员工管理系统实例

    前言: 1.关于PureMVC: MVC框架在很多项目当中拥有广泛的应用,很多时候做项目前人开坑开了一半就消失了,后人为了填补各种的坑就遭殃的不得了.嘛,程序猿大家都不喜欢像文案策划一样组织文字写东西 ...

  2. 如何使用AEditor制作一个简单的H5交互页demo

    转载自:http://www.alloyteam.com/2015/06/h5-jiao-hu-ye-bian-ji-qi-aeditor-jie-shao/ 本教程演示如何使用AEditor制作一个 ...

  3. 制作一个简单的WPF图片浏览器

    原文:制作一个简单的WPF图片浏览器 注:本例选自MSDN样例,并略有改动.先看效果: 这里实现了以下几个功能:1.  对指定文件夹下所有JPG文件进行预览2.  对选定图片进行旋转3.  对选定图片 ...

  4. 实例学习SSIS(一)--制作一个简单的ETL包

    原文:实例学习SSIS(一)--制作一个简单的ETL包 导读: 实例学习SSIS(一)--制作一个简单的ETL包 实例学习SSIS(二)--使用迭代 实例学习SSIS(三)--使用包配置 实例学习SS ...

  5. TensorFlow练习13: 制作一个简单的聊天机器人

    现在很多卖货公司都使用聊天机器人充当客服人员,许多科技巨头也纷纷推出各自的聊天助手,如苹果Siri.Google Now.Amazon Alexa.微软小冰等等.前不久有一个视频比较了Google N ...

  6. 手把手制作一个简单的IDEA插件(环境搭建Demo篇)

    新建IDEA插件File --> new --> Project--> Intellij PlatForm Plugin-->Next-->填好项目名OK 编写插件新建工 ...

  7. 自己制作一个简单的操作系统二[CherryOS]

    自己制作一个简单的操作系统二[CherryOS] 我的上一篇博客 自己制作一个简单的操作系统一[环境搭建], 详细介绍了制作所需的前期准备工作 一. 一点说明 这个操作系统只是第一步, 仅仅是开机显示 ...

  8. java最简单的知识之创建一个简单的windows窗口,利用Frame类

    作者:程序员小冰,CSDN博客:http://blog.csdn.net/qq_21376985 QQ986945193 微博:http://weibo.com/mcxiaobing 首先给大家看一下 ...

  9. Expression Blend4经验分享:制作一个简单的图片按钮样式

    这次分享如何做一个简单的图片按钮经验 在我的个人Silverlight网页上,有个Iphone手机的效果,其中用到大量的图片按钮 http://raimon.6.gwidc.com/Iphone/de ...

随机推荐

  1. C# 委托简单使用方法

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  2. js常用函数收集

    在js中,可以使用typeof获取变量或函数的类型,如下: <head runat="server"> <title></title> < ...

  3. STM32F0xx_TIM输入捕获(计算频率)配置详细过程

    前言 关于STM32的定时器,可谓是功能强大,估计没有多少人研究完STM32定时器的所有功能(包括我也没有),只是使用常用的一些功能,后续我会推出关于STM32定时器的更多功能. STM32芯片多数为 ...

  4. 第二十二章 数据访问(In .net4.5) 之 集合

    1. 概述 本章内容包括 .net平台中的集合.如何选择集合 以及 如何实现自定义集合. 2. 主要内容 2.1 使用数组(Array) ]; ; x < arrayOfInt.Length;  ...

  5. Oracle结果集 (MSSQL存储过程写报表)

    接触SQL Server比较多,写报表是用存储过程实现. 对Oracle实现像MSSQL那样,还是有很多疑问

  6. linux kernel 0.11 head

    head的作用 注意:bootsect和setup汇编采用intel的汇编风格,而在head中,此时已经进入32位保护模式,汇编的采用的AT&T的汇编语言,编译器当然也就变成对应的编译和连接器 ...

  7. 设置SVN hooks实现自动发布

    # CentOS下安装SVN yum -y install subversion svnserve --version cd /home/ mkdir svn cd svn/ /usr/bin/svn ...

  8. poj 3625 Building Roads

    题目连接 http://poj.org/problem?id=3625 Building Roads Description Farmer John had just acquired several ...

  9. hdu 5273 Dylans loves sequence

    题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=5273 Dylans loves sequence Description Dylans is give ...

  10. Android保存图片到系统图库

    最近有些用户反映保存图片之后在系统图库找不到保存的图片,遂决定彻底查看并解决下. Adnroid中保存图片的方法可能有如下两种: 第一种是自己写方法,如下代码: public static File ...