上传loading条的实现

这篇博客记录了如何利用DWR(Direct Web Remoting)在文件上传时实现一个loading条。作者通过JSP页面调用DWR的startProgress()方法启动加载提示,展示了一个由多个嵌套DIV组成的loading效果。DWR的配置、UploadMonitor和UploadInfo类的定义以及后台处理方法都在文中详细给出,最后展示了实现的加载效果。
摘要由CSDN通过智能技术生成

        前个项目结束有段时间了,发现人很奇怪,原来觉得太累,现在稍微休息下就觉得有点空虚,主要是也休息太

长时间了,快两个月了,公司的人员管理比较混乱,人人都像救火队员。哎,发牢骚也没用,既然比较闲就觉得把

以前的东西稍微整理下,做个记录。前个项目也没多少得意的地方,就有个上传的loading做得还有点意思,就它

了。 

        我是采用DWR来实现js访问java后台的,可能是隔的时间太久了,有点忘了,不知该怎么组织语言,贴代码

吧,最直接了。

< form  action ="filemanager.do?method=FileLoad"
    method
=post  ENCTYPE ="multipart/form-data"  onsubmit ="startProgress()" >
< table  width ="100%"  border ="0"  cellspacing ="0"  cellpadding ="0" >
                    
< tr >
                        
< td >
                        上传内容 
< input  type ="file"  name ="file"  id ="file"   >
                        
                            
< div  id ="loader_container"  style ="display:none" >                         
                            
< div  id ="loader" >
                                
< div  id ="persont"  align ="center" ></ div >
                                
< div  align ="center" ></ div >
                            
< div  id ="loader_bg" >
                                
< div  id ="progress" ></ div >
                            
</ div >
                            
</ div >
                            
</ div >
                        
</ td >
                        
< td  width ="120"  align ="center" >< div  id ="show" >< img  id ="uploadbutton"
                            src
="../img/button/load.gif"   height ="24"
                            onclick
="startProgress()"
                            onmouseover
="this.style.cursor='hand'" >   </ div >                 
                        
</ td >
                    
</ tr >             
</ table >
</ form >

JSP页面,点击上传后调用startProgress()方法,这中间的多个DIV嵌套就是用来显示loading条的,下面的js代码


< script language = " javascript " >     
    
function  refreshProgress() {
        UploadMonitor.getUploadInfo(updateProgress);
    }


    
function  updateProgress(uploadInfo) {
        
if (uploadInfo.inProgress){   
            document.getElementById(
"file").disabled="true";            
            document.getElementById(
"show").style.display = "none";
               document.getElementById(
"hidden").style.display = "block";
               
            
var progressPercent = Math.ceil((uploadInfo.bytesRead / uploadInfo.totalSize) * 100);

               document.getElementById(
'persont').innerHTML = '上传进度: ' + progressPercent + '%';

            document.getElementById(
'progress').style.width = (progressPercent / 100* 200;
       
            window.setTimeout(
'refreshProgress()'1000);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值