web开发难免遇到上传功能。

比较一下之前用过的几种上传方式:

1、struts2自带的s:file

优点:简单易用

缺点:全页刷新,用户体验不好,如果文件大,白页时间较长。

2、第三方上传控件,jQueryUpload,SwfUpload。。。。

优点:功能强大,有上传进度条,各个事件监听的很全面。

缺点:需要引用的文件较多,大部分功能都不需要。样式修改有点小复杂。

3、用flex量身定制的上传控件

优点:同样有上传进度条。监听事件自定义,按需添加。样式自己控制。

缺点:页面需要引用200多K的flash。

今天抽空实现一个轻量级的上传。有些人应该也是这样实现的,一起研究研究。

4、html自带的input file + iframe

优点:不用刷新页面,引用文件少(其实可以0引用,只是用到jQ,还有js和css提取出外部文件),源码简单,修改成本低。

缺点:没有真实的进度条。上传时只能弹出个假的GIF进度条(比较简单,暂未实现)。

源码奉上,只是个demo,要求不要太高哦,亲。