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);
之后,一切正常!
我在标准 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);
之后,一切正常!