具体的使用请参考官方文档
一从大体上来说,swfUpload主要有这样几个重要的文件
1.swfupload_f9.swf 这个是核心的上传用的flash文件.
2.upload.aspx 这个是把文件上传到服务器上后,所要处理的页面.
3.default.css 用于显示进度条的CSS文件.可以根据自己喜好进行修改!
4.swfupload.js 定义了swfupload_f9组建的属性和一些方法.(最好不好动).
5.handler.js 定义了,用于处理swfupload_f9组建所触发的事件.可以根据自己需要,进行修改.
解压附件,打开其中的Default.aspx 是前台上传图片页面,页面的JS代码很容易看懂
打开upload.aspx,是处理上传图片的,在Demo中是生成缩略图,我在代码中又设置了文件保存路径,以及对上传图片进行了重命名。有不懂的童鞋可以用VS打开附件进行查看。
下面说些常见问题
IE9下面“选择照片”按钮不显示(SWFUpload ie9 bug)
解决办法,修改swfupload.js文件getFlashHTML
添加classid=”clsid:d27cdb6e-ae6d-11cf-96b8-444553540000″
但我发现官方的DEMO是在IE9下显示正常的,很奇怪。而且发现添加了这个后Firefox和Chrome下又显示异常了。。。去掉后除IE9下显示异常外,其他浏览器正常,我想这应该还是归因于ie9的bug吧。
Firefox,Chrome 报错302(Firefox , Chrome SWFUpload 302 )
附件中即为官方版本
swfupload是flash采用socket和服务端进行通信了,所以服务端的session值或cookie值在这时候是捕获不到了。在默认的情况下ie是不存在获取不到seesion或cookie值的,然而对于firefox或chrome在dotnet环境下都是不能获取session和cookie值的。
通过 Global.asax 文件你可以覆盖丢失的Session ID cookie,代码如下(引用官方解决方案):
Global.asax修改如下:
void Application_BeginRequest(object sender, EventArgs e)
void UpdateCookie(string cookie_name, string cookie_value)
另附
设置保存图片路径和,返回图片保存路径