以编程方式添加图像时不会触发 Dropzone“已添加文件”

Mey*_*sam 1 javascript jquery dom-events dropzone.js

我想添加checkbox到 dropzone 图像,以便我只能上传选定的图像。checkboxaddedfile事件被触发时,我将在每个图像旁边添加一个。

我使用以下方法以编程方式将图像添加到 dropzone

var mockFile = { name: "image.jpg", size: 12345 };
imgUrl = "http://example.com/image.jpg"
myDropzone.options.addedfile.call(myDropzone, mockFile);
myDropzone.options.thumbnail.call(myDropzone, mockFile, imgUrl);
Run Code Online (Sandbox Code Playgroud)

问题是不会为以这种方式添加的图像触发“ addedfile”事件:

myDropzone.on("addedfile", function(file) {
    console.log("file added!"); // this line is never printed
});
Run Code Online (Sandbox Code Playgroud)

但是,如果通过手动单击dropzone并选择文件来添加图像,则会触发上述事件。为什么在第一种情况下不触发此事件?

Ram*_*eek 5

根据 dropzone文档:触发addedfile事件的正确方法是在init实例化 dropzone 时在部分中调用它。

例子:

   Dropzone.options.myAwesomeDropzone = {
      init: function() {
       this.on("addedfile", function(file) { alert("Added file."); });
      }
   };
Run Code Online (Sandbox Code Playgroud)


gre*_*dev 5

不要像我做的那样尝试监听addedFile事件而不是addedfile(d'oh)。

  • 这正是我遇到的问题。证明没有答案是愚蠢的;)。这让我检查了这个名字。 (3认同)