2016-12-06 1 views
0

Ich benutze ein Formular mit Dropzone in Modal und ich habe ein Problem: wenn der Benutzer das Modal zum ersten Mal öffnet, kann ich es schaffen, eine neue Dropzone aufrufen ("# Meine-Form-ID"). Das Problem ist, wenn der Benutzer das modale schließt und es wieder öffnet, muss ich Dropzone an das Formular erneut anhängen, weil es über Ajax gerendert wird. Da Dropzone bereits angehängt war, gibt es mir den Fehler. Ich habe versucht, die Dropzone beim Schließen von modal zu zerstören und sie erneut anzuhängen, wenn das Fenster wieder geöffnet wird. Es hört auf, den Fehler zu geben, aber zu diesem zweiten Mal funktioniert es nicht. Wie kann ich Dropzone mehrfach für ein Formular (dieselbe ID) in dieser Situation anhängen? Irgendwelche Ideen?Dropzone JS - Zerstöre und erstelle für die gleiche Form

+0

Können Sie Code freigeben? Wie zerstörst du es? – Matus

Antwort

1

Wie validieren Sie, wenn die Instanz bereits deklariert ist. Wenn ich die dropXML in meinem Fall bereits deklariert habe, vermeide ich, mit dieser Methode erneut zu deklarieren.

if (Dropzone.instances.length == 0) { 
    dropXML = new Dropzone("div#dropXML", dropXMLOptions); 

    $('div.dropzone').find('div.dz-message').toggle(); 
    $('div.dropzone').find('div.dz-message').show(); 
} 
+0

OP sagte: "Ich muss Dropzone erneut an das Formular anhängen, weil es über Ajax gerendert wird." also denke ich, das ist nicht die antwort. – Matus

+0

OK, wie wäre es, wenn Sie die Optionen in einer Variablen speichern und diese Optionen später aufrufen, um sie erneut zu erstellen. Sie zerstören also Ihre Dropzone mit gespeicherten "X" -Optionen und später erstellen Sie eine neue Dropzone an einem bestimmten Ort mit diesen Optionen. Für mich geht das. –

+0

Ich habe das gefunden. Ich hoffe, es hilft. http://jsfiddle.net/tomas_eklund/761qr3r5/39/ –