【发布时间】:2020-04-20 01:57:20
【问题描述】:
我有一个案例,我必须先保存表单 - 以获得一个 id - 上传的文件将与之相关。
我工作正常 - 但到目前为止我无法从 data.submit(); 获得任何进度数据。
有可能吗?
这是我的代码:首先收集待处理列表中的数据对象:
var pendingList = [];
$('#fileupload').fileupload({
dropZone: $('#drop-area'),
uploadTemplateId: null,
downloadTemplateId: null,
url: multi_upload_action,
autoUpload: false,
add: function (e, data)
{
$.each(data.files, function (index, file)
{
var row = $('<div class="template-upload">' +
'<div class="table-cell">' +
'<div class="name">' + file.name + '</div>' +
'<div class="error"></div>' +
'</div>' +
'<div class="table-cell">' +
'<div class="size">Processing...</div>' +
'</div>' +
'<div class="table-cell">' +
'<div class="progress" style="width: 100px;"></div>' +
'</div>' +
'</div>');
// fetching formatted size;
var file_size = formatFileSize(file.size);
row.find('.size').text(file_size);
data.context = row.appendTo($(".content_upload_download"));
});
pendingList.push(data);
},
limitConcurrentUploads: 1,
maxChunkSize: 8388000
});
然后 - 稍后 - 发送带有额外信息的文件:
sendAllFiles = function (id, redirect_action)
{
var total_files = pendingList.length;
var n = 0;
pendingList.forEach(function (data)
{
data.formData = {id: id};
data.submit()
.done(function (data, status)
{
n++;
$.each(data.files, function (index, file)
{
if (typeof file.error != 'undefined' && file.error)
{
alert(file.name + ': ' + file.error);
}
});
if (n == total_files)
{
window.location.href = redirect_action;
}
});
});
};
问候
【问题讨论】:
标签: jquery file-upload blueimp