例子如下:http://labs.newmediateam.com/Multifileupload/FileUpload.html
例子源码:http://labs.newmediateam.com/Multifileupload/srcview/index.html
请务必先详细阅读上面提供的源码实现。
在实际使用过程中,后台可以使用Java Servlet来响应_file.upload( _uploadURL) ; 函数触发文件上传事件。
上例中_uploadURL是个全局变量,尽管在最初的时候_uploadURL.method属性被置成GET,当_uploadURL被第二次调用时,可能会发生method属性被重新置成POST(默认是POST)。而当method属性为POST状态时,_file.upload( _uploadURL) ; 函数将无法触发后台Java Servlet以便实现文件上传事件。
解决的办法就是在_file.upload( _uploadURL) ; 被动用之前,重新设置一次_uploadURL.method属性为GET。
实际项目中发生该问题的代码如下(截取部分代码):
奇怪的是,在测过过程中发现,并不是所有机器都会出现上述问题,和浏览器等都有关系。
上述代码中只要把request.method="GET"这句的注释去掉就不会发生这种现象。