【发布时间】:2014-04-29 15:42:45
【问题描述】:
我注意到,当使用here 所示的技术在接收“模拟”文件的 dropzone 实例上调用 .removeAllFiles() 时,实际上并没有达到预期的效果(模拟文件仍然存在)。
【问题讨论】:
标签: dropzone.js
我注意到,当使用here 所示的技术在接收“模拟”文件的 dropzone 实例上调用 .removeAllFiles() 时,实际上并没有达到预期的效果(模拟文件仍然存在)。
【问题讨论】:
标签: dropzone.js
我也遇到了同样的问题。
我认为这是因为从服务器添加的文件没有进入 files 数组,当你调用 removeAllFiles() 它不会工作,因为它根本不在 files 数组中。
所以显而易见的解决方案是将它们添加到 files 数组中,它看起来像这样
$(function() {
var mockFile = { name: "banner2.jpg", size: 12345 };
var myDropzone = new Dropzone("#my-awesome-dropzone");
myDropzone.options.addedfile.call(myDropzone, mockFile);
myDropzone.files.push(mockFile); // here you add them into the files array
myDropzone.options.thumbnail.call(myDropzone, mockFile,
"http://localhost/test/drop/uploads/banner2.jpg");
});
现在您可以在某些事件上使用myDropzone.removeAllFiles();,并且从服务器添加的文件也将从 dropzone 中删除。
注意:使用上述代码时请记住。如果您在从 dropzone 中删除文件时触发服务器端代码以从服务器中删除文件,那么来自服务器的所有文件都将被删除。
【讨论】: