Ich versuche, mehrere Dateien zusammen Wert von Eingabefeldern mit Dropzone zu senden. Leider habe ich eine Fehlermeldung erhalten, dass dropzone bereits angehängt ist.JQuery: Senden mehrerer Dateien und Parameter erhalten Fehler: Dropzone bereits angefügt
Hier ist mein Code
$(document).on('click','#addContestant',function(e){
e.preventDefault();
var random_gender = $('#randomGender').val();
var contestant_name = $('#contestant_name').val();
var contestant_lastName = $('#contestant_lastName').val();
var conAge = $('#conAge').val();
var hAddress = $('#hAddress').val();
var email_add = $('#email_add').val();
var conContactNum = $('#conContactNum').val();
var conDesc = $('#conDesc').val();
var hidden_gender = $('#hidden_gender').val();
var conId_hidden = $('#conId_hidden').val(); // the contestant prima id
var param = "?event_id="+encodeURIComponent(event_id)+
"&contestant_name="+encodeURIComponent(contestant_name)+
"&contestant_lastName="+encodeURIComponent(contestant_lastName)+
"&conAge="+encodeURIComponent(conAge)+
"&hAddress="+encodeURIComponent(hAddress)+
"&email_add="+encodeURIComponent(email_add)+
"&conContactNum="+encodeURIComponent(conContactNum)+
"&conDesc="+encodeURIComponent(conDesc)+
"&conId_hidden="+encodeURIComponent(conId_hidden)+
"&hidden_gender="+encodeURIComponent(hidden_gender)+
"&random_gender="+encodeURIComponent(random_gender)+
"&multipleImage="+encodeURIComponent(multipleImage);
Dropzone.autoDiscover = false;
var myDropzone = new Dropzone('form#my-awesome-dropzone', {
url : '../ajax/ajax_add/ajax_addNEWContestant.php?'+param,
maxFilesize: 3.0,
maxFiles: 4,
parallelUploads: 10000,
uploadMultiple: true,
autoProcessQueue: false
});
});
Sie fügen Dropzone in das Formular-Element in einem Click-Ereignis, das jedes Mal, bedeutet das Element geklickt wird, läuft dieser Code. Dadurch erhalten Sie jedes Mal die Fehlermeldung, wenn Sie auf das erste Mal klicken, da Dropzone bereits zum Zielelement hinzugefügt wurde. Sie müssen entweder a) eine Dropzone in das Formular auf 'domready' anstatt auf einen Klick einfügen, oder b) wenn Sie ein neues Feld an anderer Stelle in Ihrem Code dynamisch hinzufügen, fügen Sie es nur dem Feld selbst hinzu, nicht dem Formular. –
Wenn ich die a verwende. Meine Eingabefeldwerte werden nicht gesendet. Nur die Dateien von Dropzone, wie kann ich Dateien und Eingabefelder gleich zusammen implementieren. –
Sie können ein '' verwenden, das '' Element mit 'multiple' Attributset enthält. Der Benutzer kann eine Auswahl von mehreren Dateien bei '' Element löschen, dann kann der Benutzer ein Formular senden, das sowohl Dateien als auch andere Eingabefelder innerhalb des '' Elements enthalten soll. – guest271314