
其实这种效果在实际应用中并不是太实用,如果你需要有一个进度的话,这必然前台与后台要实时交互才会出效果。比如你从数据库中遍历一组用户的信息,这中间需要一个不断递增的数字来实时调节页面的进度条。这就需要你不断的去请求服务器。当然也可以做个纯页面处理不通过服务器的,但执行时间你无法估计,造成不同步。
有一个简单的方法,首先得到这个需要读取数据的总条目数,然后在前台页面使用一个类似于递归的循环调用这个AJAX方法,再通过返回的数据来实时控制页面的进度条,通过返回成功的状态重复来调用此方法,最后用总条目数来控制这个递归什么时候停止。
使用apache的commons-fileUpload。 1、实现进度监听接口。 public void update(long pBytesRead, long pContentLength, int pItems) { double mBytes = pBytesRead / 1000000; double total=pContentLength/1000000; if (megaBytes == mBytes) { return; } megaBytes = mBytes; if (pContentLength == -1) { Systemoutprintln("So far, " + pBytesRead + " bytes have been read"); } else { Systemoutprintln("So far, " + pBytesRead + " of " + pContentLength + " bytes have been read"); double read=(mBytes/total); NumberFormat nf=NumberFormatgetPercentInstance(); sessionsetAttribute("read", nfformat(read)); } } 2、页面通过ajax获取session中的进度: public void doPost(>
可以找一个上传插件,如:webupload。
上传插件可以配置显示上传进度,多文件上传可以同时显示多个文件的进度条。
如果自己写的话,需要考虑浏览器兼容和文件上传控制等。
aspnet比较麻烦,后台要处理好表示进度的问题,前台要处理获取进度的问题
推荐一些资源:
>
如果你是用这种方式上传的话,确实没有好方法。
因为 XML>
以上就是关于jQuery Ajax进度条效果全部的内容,包括:jQuery Ajax进度条效果、如何获取FileUpload上传文件的进度、ajax多文件上传如何实现进度条等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)