在一个请求中上传多个文件Dropzone发送两个请求
我试图使用DropZone js在一个请求中发送多个文件。
这是我的代码:
Dropzone.autoDiscover = false; var myDropzone = new Dropzone('#upload-Invoices', { paramName: "files", maxFilesize: 3.0, maxFiles: 4, parallelUploads: 10000, uploadMultiple: true, autoProcessQueue: false }); $('#btnUpload').on('click', function () { myDropzone.processQueue(); });
控制器:
public void FileUpload( IEnumerable file ) { // Do Something }
视图:
正在接收文件,虽然在不同的请求中,我想在一个请求中发送所有文件,Dropzone页面有一个选项,虽然它不起作用。 提前致谢
问题是我使用的是输入类型=“提交”,它会自己做另一个post,将其改为输入“按钮”。
不推荐使用enqueueForUpload
属性,而应使用autoProcessQueue
。 我的预感是,由于不再使用enqueueForUpload
并且您没有将autoProcessQueue
设置为false
,因此DropZone.js假定您要发送每个文件,因为它在组件上被删除。
你应该删除enqueueForUpload: false
,设置autoProcessQueue: false
,在你选择(即删除)你需要上传的所有文件之后,调用.processQueue()
函数,如文档中所述。
我也看到多个POST,一次发送2个文件(例如,总共4个文件的2个单独的POST)。
我在这里找到了解决方案:增加parallelUploads
。 我现在以下列方式创建dropzone:
var myDropzone = new Dropzone('div#dz', { url: 'http://httpbin.org/post', uploadMultiple: true, parallelUploads: 10 });
- 将视图作为JSON对象的一部分返回
- 使用Jquery在ViewBag中设置值
- 无法加载资源:未捕获的TypeError:$(…)。select2不是函数
- 使用Ajax.ActionLink ASP.Net MVC多个更新目标ID
- 在dataSource.read之后获取Kendo Grid中的记录数
- __doPostBack()导致post pack但不调用aspx页面中的按钮单击事件
- JQuery Ajax调用提供404’资源未找到’错误,但普通URL调用很好
- 加载选择列表时,在JQuery中使用json数据填充selectlist(不是文档)
- 在MVC中的PagedList.MVC中,搜索模型正在清除第二页请求