给aspxt添加进度条?????????被采纳者给50分 我想在aspx网页访问数据库时,添加进度条,哪位达人能提供源码参考,谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <style type="text/css">body{margin:0px;padding:0px;font-size:12px;overflow-y:hidden;z-index:0;height:100%;}#yin{ }</style><script type="text/javascript">window.onload=function(){var a = document.getElementById("loading"); //var b = document.getElementById("backloading"); a.parentNode.removeChild(a); //b.parentNode.removeChild(b); }document.write('<div id="loading" style="position: absolute; filter: alpha(opacity=35); left: 0px; top: 0px; width:'+document.body.clientWidth+';height: '+document.body.clientHeight+'; z-index: 1; background-color: #66CC33; layer-background-color: #66CC33;border: 1px none #000000;">');;document.write('<div align="center"><table height="100%"><tr><td valign="middle" align="center">');document.write('<div style="background: Red; color: #FFF; width: 217px; padding-left: 0px;position: absolute; line-height: 22px; z-index: 30;"><img src="/OASys/Ajax/UserReg/progressbar_green.gif"/></div>');document.write('</td></tr></table></div></div>');</script> http://www.codeproject.com/aspnet/PleaseWaitButton.asp 这里应该有你需要的:http://dotnet.aspx.cc/article/794566b9-5ea2-4782-2d42-e133f3c7ba74/read.aspx 精确的计算进度比较麻烦。你可以用一个标签、一个LOADING的图片来模拟进度,用AJAX来控制就可以了。 建一个HTML网页:源码如下:<html xmlns="http://www.w3.org/1999/xhtml" id="mainWindow"><head> <title>无标题页</title> <script language="javascript" type="text/javascript"> function SetPorgressBar(pos) { //设置进度条居中 var screenHeight = window["mainWindow"].offsetHeight; var screenWidth = window["mainWindow"].offsetWidth; ProgressBarSide.style.width = Math.round(screenWidth / 4); ProgressBarSide.style.left = Math.round(screenWidth / 3); ProgressBarSide.style.top = Math.round(screenHeight / 2); ProgressBarSide.style.height = "21px"; ProgressBarSide.style.display = ""; //设置进度条百分比 ProgressBar.style.width = pos + "%"; ProgressText.innerHTML = "正在加载,请稍后....." + pos + "%"; } //完成后隐藏进度条 function SetCompleted() { ProgressBarSide.style.display = "none"; MyTable.style.display="none"; } </script> </head><body> <!--<div id="mydiv" style="width: 224px">数据处理中....</div>--> <div id="ProgressBarSide" style="position:absolute;height:21px;width:100px;color:Silver;border-width:1px;border-style:Solid;display:none"> <div id="ProgressBar" style="position:absolute;height:21px;width:0%;background-color:PaleTurquoise"></div> <div id="ProgressText" style="position:absolute;height:21px;width:100%;text-align:center"></div> </div> </body></html>然后在你要加载显示的页面Page_Load:if (!Page.IsPostBack){ beginProgress(); for (int i = 1; i <= 100; i++) { setProgress(i); //此处用线程休眠代替实际的操作,如加载数据等 System.Threading.Thread.Sleep(20); } finishProgress(); }函数区:/// <summary> ///显示进度条 /// </summary> private void beginProgress() { //根据ProgressBar.htm显示进度条界面 string templateFileName = Path.Combine(Server.MapPath("."), "ProgressBar.htm"); StreamReader reader = new StreamReader(@templateFileName,System.Text.Encoding.GetEncoding("GB2312")); string html = reader.ReadToEnd(); reader.Close(); Response.Write(html); Response.Flush(); } private void setProgress(int percent) { string jsBlock = "<script>SetPorgressBar('" + percent.ToString() + "'); </script>"; Response.Write(jsBlock); Response.Flush(); } private void finishProgress() { string jsBlock = "<script>SetCompleted();</script>"; Response.Write(jsBlock); Response.Flush(); } 多线程Monitor.Wait的用法 ExecuteNonQuery: CommandText 属性尚未初始化 请问在WINFORM里面怎么放Table 连接Access数据库时,如何获得数据库的相对路径? 请问 .net 下有没有 des 算法和 md5 算法的类? c#类型转换问题,非常急!谢谢! 初学C#问个简单的问题 C# 数组问题 Crystal Report 中引用XML文件做数据源的问题 dataSet占用的内存也太大了!随便一点数据就好几兆! 数据的二次查 Winform配置应用程序集问题
body{
margin:0px;padding:0px;font-size:12px;overflow-y:hidden;z-index:0;height:100%;
}
#yin{ }</style>
<script type="text/javascript">
window.onload=function(){
var a = document.getElementById("loading");
//var b = document.getElementById("backloading");
a.parentNode.removeChild(a);
//b.parentNode.removeChild(b);
}
document.write('<div id="loading" style="position: absolute; filter: alpha(opacity=35); left: 0px; top: 0px; width:'+document.body.clientWidth+';height: '+document.body.clientHeight+'; z-index: 1; background-color: #66CC33; layer-background-color: #66CC33;border: 1px none #000000;">');;
document.write('<div align="center"><table height="100%"><tr><td valign="middle" align="center">');
document.write('<div style="background: Red; color: #FFF; width: 217px; padding-left: 0px;position: absolute; line-height: 22px; z-index: 30;"><img src="/OASys/Ajax/UserReg/progressbar_green.gif"/></div>');
document.write('</td></tr></table></div></div>');</script>
http://www.codeproject.com/aspnet/PleaseWaitButton.asp
http://dotnet.aspx.cc/article/794566b9-5ea2-4782-2d42-e133f3c7ba74/read.aspx
源码如下:
<html xmlns="http://www.w3.org/1999/xhtml" id="mainWindow">
<head>
<title>无标题页</title>
<script language="javascript" type="text/javascript">
function SetPorgressBar(pos)
{
//设置进度条居中
var screenHeight = window["mainWindow"].offsetHeight;
var screenWidth = window["mainWindow"].offsetWidth;
ProgressBarSide.style.width = Math.round(screenWidth / 4);
ProgressBarSide.style.left = Math.round(screenWidth / 3);
ProgressBarSide.style.top = Math.round(screenHeight / 2);
ProgressBarSide.style.height = "21px";
ProgressBarSide.style.display = ""; //设置进度条百分比
ProgressBar.style.width = pos + "%";
ProgressText.innerHTML = "正在加载,请稍后....." + pos + "%";
} //完成后隐藏进度条
function SetCompleted()
{
ProgressBarSide.style.display = "none";
MyTable.style.display="none";
}
</script>
</head>
<body>
<!--<div id="mydiv" style="width: 224px">数据处理中....</div>-->
<div id="ProgressBarSide" style="position:absolute;height:21px;width:100px;color:Silver;border-width:1px;border-style:Solid;display:none">
<div id="ProgressBar" style="position:absolute;height:21px;width:0%;background-color:PaleTurquoise"></div>
<div id="ProgressText" style="position:absolute;height:21px;width:100%;text-align:center"></div>
</div>
</body>
</html>
然后在你要加载显示的页面Page_Load:if (!Page.IsPostBack)
{
beginProgress(); for (int i = 1; i <= 100; i++)
{
setProgress(i); //此处用线程休眠代替实际的操作,如加载数据等
System.Threading.Thread.Sleep(20);
} finishProgress();
}函数区:/// <summary>
///显示进度条
/// </summary> private void beginProgress()
{
//根据ProgressBar.htm显示进度条界面
string templateFileName = Path.Combine(Server.MapPath("."), "ProgressBar.htm");
StreamReader reader = new StreamReader(@templateFileName,System.Text.Encoding.GetEncoding("GB2312"));
string html = reader.ReadToEnd();
reader.Close();
Response.Write(html);
Response.Flush();
} private void setProgress(int percent)
{
string jsBlock = "<script>SetPorgressBar('" + percent.ToString() + "'); </script>";
Response.Write(jsBlock);
Response.Flush();
} private void finishProgress()
{
string jsBlock = "<script>SetCompleted();</script>";
Response.Write(jsBlock);
Response.Flush();
}