Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I reset the dropzone in this code?

Dropzone.options.imageFile = {
    url: HOST_NAME + USER_NAME + BUILDER_API +'image/',
    method: 'POST',
    // enter code here
    acceptedFiles: '.jpg, .jpeg, .png',
    paramName: "imagefile", // The name that will be used to transfer the file
    maxFilesize: 10, // MB
    //addRemoveLinks: true,
    maxFiles: 2,
    init: function() {
        this.on("success", function(file, response) {
            image_id = response.id;
            IMAGES.push(image_id);
            check_files();
        }),
        this.on("removedfile", function(file, response){
            data = JSON.parse(file.xhr.response);
            alert(data['id']);
        });
    },
};

What I have to do to reset the dropzone completely?

like image 671
rsudip90 Avatar asked Feb 11 '14 12:02

rsudip90


2 Answers

Not 100% sure I understood the question, but I presume you want to be able to reuse the dropzone instance from its original state.

Technically you want to call removeAllFiles() and that will remove all the files.

Here is an example that shows you how to add a remove all files with one button: Remove all files with one button

Also, there were other people trying to do the same thing that you are looking for: Reset dropzone to Pristine state

like image 116
Andrei Sfat Avatar answered Oct 08 '22 08:10

Andrei Sfat


This is the answer to that question and many like it on stackoverflow... to removeAllFiles on a NON-programmatically created dropzone (http://www.dropzonejs.com/#configuration), you'd execute (using the OP's ID):

 var myDropzone = Dropzone.forElement("#imageFile");
 myDropzone.removeAllFiles();

The problem is that this does NOT put the nice "upload an image here" message back for me - just leaves an inexplicable white box - one more step to fix that.

 $(".dz-message").removeClass("hidden");

That will show the original message.

like image 39
Scott Avatar answered Oct 08 '22 09:10

Scott