【发布时间】:2014-08-18 04:53:20
【问题描述】:
我正在使用Dropzonejs 在表单中添加图像上传功能,因为我在表单中有各种其他字段,所以我将autoProcessQueue 设置为false 并在单击表单的提交按钮时对其进行处理,如下所示.
Dropzone.options.portfolioForm = {
url: "/user/portfolio/save",
previewsContainer: ".dropzone-previews",
uploadMultiple: true,
parallelUploads: 8,
autoProcessQueue: false,
autoDiscover: false,
addRemoveLinks: true,
maxFiles: 8,
init: function() {
var myDropzone = this;
this.element.querySelector("button[type=submit]").addEventListener("click", function(e) {
e.preventDefault();
e.stopPropagation();
myDropzone.processQueue();
});
}
}
这很好用,允许我处理提交表单时发送的所有图像。但是,当他再次编辑表单时,我也希望能够看到用户已经上传的图像。所以我浏览了 Dropzone Wiki 的以下帖子。 https://github.com/enyo/dropzone/wiki/FAQ#how-to-show-files-already-stored-on-server
它用现有图像填充dropzone-preview 区域,但这次它不发送带有表单提交的现有图像。我想这是因为这些图像没有添加到queue,但是如果是这样,那么如何在服务器端进行更新,以防用户删除现有图像?
另外,有什么更好的方法,在queue 中再次添加已经添加的图像,还是只发送已删除文件的信息?
【问题讨论】:
标签: javascript ajax forms magento dropzone.js