dropzone.js 表单提交未发送文件

dropzone.js form submit not sending file

我在标准 html 表单中使用 Dropzone.js 时遇到了一些问题。使用我的代码,一切正常,我可以单击该区域添加图像,一次只能添加一张图像,并且只有在按下提交按钮时才会上传图像。 但是,按下提交时实际上没有发送任何内容。我知道我需要手动处理队列,但这似乎根本不起作用。表单数据的其余部分已发送,但只有图像未发送。

我正在使用以下简化代码。 (假设除了没有文件被发送外这还能工作。)

HTML

<form action='upload.php' method="post" class="dropzone" id="mydz">
<input type='submit' name='submitimage' value='Save' style='float:left;'/>

JAVASCRIPT

Dropzone.options.mydz = {
   autoProcessQueue: false,
   maxFiles: 1,

   init: function() {
      var submitButton = document.querySelector("#submitimage");
      mydz = this; // closure

      submitButton.addEventListener("click", function() {
         mydz.processQueue(); // Tell Dropzone to process all queued files.
      });                                    

      this.on('addedfile', function(file){ if(this.files.length > 1) { this.removeFile(this.files[0]); } });
   }
}

我一整天都在尝试解决这个问题,但网上搜索再多也没有找到对我有用的东西。你们有人能帮忙吗?? :)

宾果!!!在我之前链接的 github post 的作者的帮助下,这个问题现在已经解决了!

我之前 post 编写的代码按原样工作,但是在 dropzone.js 文件中,我添加了这两行 this.hiddenFileInput.setAttribute("name", _this.options.paramName); $("form.dropzone").append(_this.hiddenFileInput);

document.body.appendChild(_this.hiddenFileInput); 之后,一切正常!