2014-02-24 72 views
0

我有一個問題,我在我的網站dropzone.js上使用,但它不適合我。我有兩個問題。 JSON工作正常。Dropzone顯示文件存在

  1. 在現有的文件,我還沒有刪除按鈕
  2. 當我通過拖放上傳,並把它上傳文件兩次
var FormDropzone = function() { 

$(function() { 

    var projectID = $("#projectID").html(); 

    var myDropzone = new Dropzone("#my-dropzone"); 

    $.getJSON('http://'+window.location.hostname+'/project/getFile/'+projectID, function(json) { 

     for (var i = 0; i < json.length; i++) { 

     var mockFile = { name: json[i].name, size: json[i].size }; 

     myDropzone.emit("addedfile", mockFile); 

     myDropzone.emit("thumbnail", mockFile, "../../upload_files/project/1/"+json[i].name); 

     }; 
    }) 

}); 

return { 
    //main function to initiate the module 
    init: function() { 

     Dropzone.options.myDropzone = { 
      init: function() { 

       this.on("success", function(file, serverFileName) { 
        FileList = {"serverFileName" : serverFileName, "fileName" : file.name }; 
       }); 

       this.on("addedfile", function(file) { 

        // Create the remove button 
        var removeButton = Dropzone.createElement("<button class='btn btn-sm btn-block'>Remove file</button>"); 

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

        // Listen to the click event 
        removeButton.addEventListener("click", function(e) { 
         var projectID = $("#projectID").html(); 
         // Make sure the button click doesn't submit the form: 
         e.preventDefault(); 
         e.stopPropagation(); 
         $.post("http://"+window.location.hostname+"/project/deleteFile", { file_name: file.name, project_id: projectID, FileList : FileList["serverFileName"]}); 
         // Remove the file preview. 
         _this.removeFile(file); 
        }); 

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

      }    
     } 
    } 
}; 
}(); 

回答

0

對於添加刪除按鈕,您可以添加刪除選項,也就是addRemoveLinks : true到dropzone對象。 就像這樣:

Dropzone.options.mysample = { 
    paramName: "file", // The name that will be used to transfer the file 
    maxFilesize: 1, // MB 
    addRemoveLinks : true, 
};