mysql如何在 dropzone 插件中添加 removefile 选项?

发布时间: 2017/4/8 20:50:41
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我用 dropzone.js (http://www.dropzonejs.com/)。我试图添加删除按钮可删除该图像。但我得到 javascript 未定义错误

 <script>
  Dropzone.options.myDropzone = {
init: function() {
 addRemoveLinks: true,  
thisDropzone = this;
 $.get('photo-add.php', function(data) {
 $.each(data, function(key,value){
var mockFile = { name: value.name, size: value.size };
  thisDropzone.options.addedfile.call(thisDropzone, mockFile);
 thisDropzone.options.thumbnail.call(thisDropzone, mockFile,      "upload/"+value.name);

});
 });

 this.on("removedfile", function(file) {
alert(file.name);
console.log(file);
     // Create the remove button
  var removeButton = Dropzone.createElement("<button>Remove file</button>");

 /    / Capture the Dropzone instance as closure.
  var _this = this;

 // Listen to the click event
 removeButton.addEventListener();

   // Add the button to the file preview element.
  file.previewElement.appendChild(removeButton);
    });
  }
  };
     </script>

解决方法 1:

我认为你没有配置 dropzone 以适当的方式。

init: function() {
 addRemoveLinks: true, 

上面的代码是无效的。

像这样使用

Dropzone.options.myAwesomeDropzone = {
  addRemoveLinks: true,
  init: function() {

  }

  ...

};

否则,你也可以使用像this.addRemoveLinks = true

如果你想要处理的事件的删除文件你可以使用像这样

removedfile: function(file) {
    x = confirm('Do you want to delete?');
    if(!x)  return false;
}

处理的服务器端上的文件删除。

在 dropzone 成功方法推向文件名数组如︰file_up_names=[];

 success:function(file){
   file_up_names.push(file.name);

现在删除获取的名称并将其传递到 php 页面文件删除。

 removedfile: function(file) {

    x = confirm('Do you want to delete?');
    if(!x)  return false;
    for(var i=0;i<file_up_names.length;++i){

      if(file_up_names[i]==file.name) {

        $.post('delete_file.php',file_name:file_up_names[i]},function(data,status){
           alert('file deleted');
        });
    }

此外请注意如果您更改了服务器端的文件名称你有回去要删除该文件的名称。

赞助商