jQuery插件jquploader文件地址返回的问题
添加评论
2009年9月5日
最近一直在学习jQuery的应用,用过之后才知道:jQuery确实很强大,正如它的宗旨一样——”write less,do more.”,写更少的代码做更多的事情。
jQuery的扩展插件非常之多,很多应用都可以用插件来实现。最近正在做一个视频上传的功能,考虑到视频文件体积一般都很大,选用ajax文件上传是个不错的方案,最后找到jquploader这个插件。经过调试后上线成功,现在遇到的难题是:使用jquploader上传文件后怎么返回经php处理过的文件地址?困惑了很久,用google找了很久也只找到相同问题没找到解答,哪位兄弟要是知道麻烦帮我解惑下啊。
你好,我是ria之家的博主,感谢你的留言,关于你说的这个问题,我研究了下,有办法解决,但不是个完美解决方案。我看了了下插件的源代码。上传后返回的关键代码如下: $this.text(”).append(‘Upload of ‘+filename+’ finished! (the filename is now stored in the form as an hidden input field)’);
从其源码来看,它并没有使用后台返回的数据,而是使用了插件定义的变量是filename,我想作者考虑到flash的问题,所以采用了这种方式,也就是说你可以在前台设置一个文件路径变量filePath,filePath,可以使用php写入,上面的‘+filename+’,替换为‘+filePath+filename+’。这不是最佳解决方案,仅供参考。
谢谢你的回复,你说的方案确实是目前唯一方案,但这样有个很严重bug,文件名重复的问题。根据你的思路,我暂时想到一个解决方法,用户通过jqupload上传文件到一个临时文件夹里,在用户提交form后,再用php移到其他文件夹并重命名储存路径到数据库。
的确是啊,我想在考虑从里面的flash源码下手,进行下改造,也许可以解决这问题。不然太麻烦了。成功了给yanglu留言,当然没有完全的把握,呵呵。
好,先谢谢了,flash我完全不懂,呵呵