【发布时间】:2016-06-23 23:55:59
【问题描述】:
使用此插件上传的主要目标:
- 通过 3 个不同的输入字段最多上传 3 个文件(图像),无需重新加载页面。
- 与未连接到单个文件的其他表单数据一起执行此操作。
- 在创建和编辑内容项(在本例中为类别)时执行此操作。
我在装有 Windows 7 的 VM 中测试了 IE9。在 Firefox、Chrome 和 Edge 中没有问题。
IE9中的问题是: 上传不起作用,当只上传一个文件并且这个文件不是最后一个文件时(所以当我删除第三个文件输入字段时,通过第二个文件输入字段上传有效)。 至少2个文件一起上传就没有问题了。
我使用的库和插件有:
- jquery 1.12.1(也使用低至 1.8.3-的版本)
- jquery-ui 1.11.4(也使用了1.9.2版本)
- jQuery-File-Upload 9.12.1(也使用低至 8.1.0 的版本):
- jquery.iframe-transport.js
- jquery.fileupload.js
插件的配置:
file_upload = form.fileupload({replaceFileInput: false}, {
//file_upload = form.fileupload({
url: url,
dataType: "json",
singleFileUploads: false,
autoUpload: false,
add: function(e,data){
uploadCategoryWithImage = true;
filesList.push(data.files[0]);
paramNames.push(data.paramName);
},
done: function(e, data) {
switch (uploadContext) {
case 'update':
updateCategoryDone(node, form, data.result, data);
break;
case 'create':
storeNewCategoryDone(node, form, data.result)
break;
case 'createLevel1':
storeNewCategoryLevel1Done(form, data.result);
}
},
fail: function( jqXHR, textStatus ) {
console.log('prepareCategoryFileUploads fail [jqXHR, textStatus]: ', [jqXHR, textStatus]);
}
});
点击表单提交按钮后使用:
file_upload.fileupload('send', {files:filesList, paramName: paramNames});
【问题讨论】:
标签: jquery internet-explorer file-upload jquery-file-upload blueimp