在jquery文件上传blueimp中开始全部上传

我使用jQuery文件上传blueimp并已阅读

$(function () { $('#fileupload').fileupload({ dataType: 'json', done: function (e, data) { $.each(data.result, function (index, file) { $('

').text(file.name).appendTo(document.body); }); }, add:function (e, data) { $("#uploadBtn").off('click').on('click',function () { data.submit(); }); } }); });

但是这会上传一个文件,我想上传所有已选中的文件。

您的问题是您解除了每个文件上的click事件的绑定。 你应该完成它:

 done: function (e, data) { $("#uploadBtn").off('click') $.each(data.result, function (index, file) { $('

').text(file.name).appendTo(document.body); }); }, add: function (e, data) { $("#uploadBtn").on('click',function () { data.submit(); }); }
 var pendingList: []; var sendAll: function () { pendingList.forEach(function (data) { data.submit(); }); pendingList = []; }; $('#fileupload').fileupload({ url: 'url_path', autoUpload: false, add: function (e, data) { pendingList.push(data); }, });  

下面的代码可能很有用。

 $('#fileupload').fileupload({ dataType: 'json', add: function (e, data) { var that = this; $.blueimp.fileupload.prototype.options.add.call(that, e, data); $("#up_btn").on('click', function () { data.submit(); }); }, }); 

要同时上传您选择的所有文件,您可以添加选项autoUpload:true,如下所示:

 $('#fileupload').fileupload({ url: 'url_path', autoUpload: true }) 

参考: https : //github.com/blueimp/jQuery-File-Upload/wiki/Options