今天用ajaxFileUpload做了一个读取图片EXIF信息然后上传到服务器的功能。
后来发现读取完成以后,再上传的时候file为空,没有文件信息。
网上查资料也找不到解决办法。
后来看ajaxFileUpload源码,发现创建from的时候没有保留原file的file信息。
解决方法:
在ajaxFileUpload.js源码中找到:createUploadForm 找到这一段
var oldElement = $('#' + fileElementId); var newElement = $(oldElement).clone(); $(oldElement).attr('id',fileId); $(oldElement).before(newElement); $(oldElement).appendTo(form);
改为:
var oldElement = jQuery('#' + fileElementId); var newElement = oldElement.clone(true); newElement[0].files=oldElement[0].files; oldElement.attr('id',fileId); oldElement.before(newElement); oldElement.appendTo(form);保存,问题解决。