我使用dropzone.js获得一个漂亮的上传表单。 我链接PHP代码上传文件,我设置addRemoveLinks = true所以我有删除按钮。
我需要一个想法,当我点击删除按钮时,如何有效地删除用PHP代码上传的filse。
php很简单,但我不需要知道如何将它们联系起来。 我已经尝试在此函数中使用$ .post removefile:function(file)但没有成功。
removedfile: function(file) {
$.post("test.php");
var _ref;
return (_ref = file.previewElement) != null ? _ref.parentNode.removeChild(file.previewElement) : void 0;
},
答案 0 :(得分:18)
首先,您不应该简单地覆盖默认的removedfile
事件处理程序,而应该注册自己的处理程序。
您需要首先从服务器获取ID(因此您知道如何与它相关),然后使用它来设置删除调用。
Dropzone.options.myDropzone = {
init: function() {
this.on("success", function(file, response) {
file.serverId = response; // If you just return the ID when storing the file
// You can also return a JSON object then the line would
// look something like this:
//
// file.serverId = response.id;
//
// In that case make sure that you respond with the mime type
// application/json
});
this.on("removedfile", function(file) {
if (!file.serverId) { return; } // The file hasn't been uploaded
$.post("delete-file.php?id=" + file.serverId); // Send the file id along
});
}