javascript 进度条

来源:互联网 发布:nginx和tomcat区别 编辑:程序博客网 时间:2024/05/22 04:26
新建一个JScsrip.js 文件 
代码如下: 
复制代码代码如下:

function setPgb(pgbID, pgbValue,pvalues) 

if ( pgbValue <= pvalues ) 

if (lblObj = document.getElementById(pgbID+'_label')) 

lblObj.innerHTML =Math.ceil((pgbValue/pvalues)*100) + '%'; // change the label value 

if ( pgbObj = document.getElementById(pgbID) ) 

var divChild = pgbObj.children[0]; 
pgbObj.children[0].style.width = Math.ceil((pgbValue/pvalues)*240);//pgbValue; 

window.status = "数据读取第" + pgbValue+"条,请稍候"; 

if ( pgbValue == pvalues ) 

window.status = "数据读取已经完成"; 
proBar.style.display="none"; 
Table1.style.display="none"; 



建立一个 common.css 
代码如下: 
复制代码代码如下:

.bi-loading-status 

/**//*position: absolute;*/ 
width: 250px; 
padding: 1px; 
overflow: hidden; 

.bi-loading-status .text{ 
white-space: nowrap; 
overflow: hidden; 
width: 100%; 
text-overflow: ellipsis; 
padding: 1px; 

.bi-loading-status .progress-bar { 
border: 1px solid ThreeDShadow; 
background: window; 
height: 10px; 
width: 100%; 
padding: 1px; 
overflow: hidden; 

.bi-loading-status .progress-bar div { 
background: Highlight; 
overflow: hidden; 
height: 100%; 
filter: Alpha(Opacity=0, FinishOpacity=100, Style=1, StartX=0, StartY=0, FinishX=100, FinishY=0); 


建立一个 progressbar.htm 
代码如下: 
复制代码代码如下:

<body topmargin="0" leftmargin="0"> 
<table width="100%" height="100%" ID="Table1" runat=server> 
<tr> 
<td align="center" valign="middle"> 
<DIV class="bi-loading-status" id="proBar" style=" LEFT: 425px; TOP: 278px" align="left"> 
<DIV class="text" id="pgbMain_label" align="left"></DIV> 
<DIV class="progress-bar" id="pgbMain" align="left"> 
<DIV STYLE="WIDTH:5%"></DIV> 
</DIV> 
</DIV> 
</td> 
</tr> 
</table> 
</body> 

建立一个 Default.aspx 文件 
前台代码如下: 
复制代码代码如下:

<head> 
<script language="javascript" src="JScript.js" type="text/javascript"></script> 
</head> 
<body > 
<form id="Form1" method="post" runat="server"> 
<asp:GridView ID="GridView1" runat="server"> 
</asp:GridView> 
</form> 
</body> 

后台代码如下: 
复制代码代码如下:

public partial class _Default : System.Web.UI.Page 

DataSet ds; 
text ts = new text(); 
int count = 0; 
#region Page_Load 
private void Page_Load(object sender, System.EventArgs e) 

if (!Page.IsPostBack) 

ds = Getgridview(); 
count = ds.Tables[0].Rows.Count; 
Response.Write("count=" + count); 
string strFileName = Server.MapPath("progressbar.htm"); 
StreamReader sr = new StreamReader(strFileName, System.Text.Encoding.Default); 
string strHtml = sr.ReadToEnd(); 
Response.Write("<div style='align:center;valign:bottom;'>" + strHtml + "</div>"); 
sr.Close(); 
Response.Flush(); 
Thread thread = new Thread(new ThreadStart(ThreadProc)); 
thread.Start(); 
LoadData(ds); 
// Getgridview(); 
//load数据 
thread.Join(); 


#endregion fixedHeader 
#region Getgridview 
protected DataSet Getgridview() 

ds = ts.QueryProcS("2009/07", "XXXX");//这个是逻辑层中的一个方法 
return ds; 

#endregion 
#region ThreadProc 
private void ThreadProc() 

string strScript = "<script>setPgb('pgbMain','{0}','" + count + "');</script>"; 
for (int i = 0; i <= count; i++) 

System.Threading.Thread.Sleep(80); 
Response.Write(string.Format(strScript, i)); 
Response.Flush(); 


#endregion LoadData 
#region LoadData 
private void LoadData(DataSet dds) 

for (int m = 0; m < count; m++) 

for (int i = 0; i < dds.Tables[0].Columns.Count; i++) 



this.GridView1.DataSource = dds.Tables[0].DefaultView; 
this.GridView1.DataBind(); 

#endregion Web Form Designer generated code 
#region Web Form Designer generated code 
override protected void OnInit(EventArgs e) 

// 
// CODEGEN: This call is required by the ASP.NET Web Form Designer. 
// 
InitializeComponent(); 
base.OnInit(e); 

/**/ 
/// <summary> 
/// Required method for Designer support - do not modify 
/// the contents of this method with the code editor. 
/// </summary> 
private void InitializeComponent() 

//this.Load += new System.EventHandler(this.Page_Load); 

#endregion 
0 0