У меня есть следующая форма и входные данные, которые я пытаюсь использовать вместе с кодом Dropzone:
<form action="/carrier/hr/employees/show/{{$employee->id}}/uploadAttachment" class="dropzone">
<div class="dropzone-previews"></div>
<input name="employeeID" value="{{$employee->id}}" type="hidden">
{{ csrf_field() }}
<div class="fallback">
<input name="file" type="file" multiple />
</div>
</form>
Date:
<input type="date" name="date" class="form-control" id="date">
Due Date:
<input type="date" name="dueDate" class="form-control" id="dueDate">
Type:
<select id="type" class="form-control" name="type">
<option>Please Select</option>
<option value="Drivers License">Drivers License</option>
</select>
И это в настоящее время специфичный для Dropzone скрипт:
<script>
$(document).ready(function() {
// disable auto discover
Dropzone.autoDiscover = false;
var providerDropzone = new Dropzone(".dropzone", {
paramName: 'file',
maxFilesize: 10, // MB
maxFiles: 20,
acceptedFiles: ".jpeg,.jpg,.png,.gif,.pdf,.doc,.docx,.xlsx,.xls",
init: function() {
this.on("sending", function(file, xhr, formData) {
formData.append("date", $('#date').val());
formData.append("dateDue", $('#dueDate').val());
formData.append("type", $('#type').val());
console.log(formData)
});
}
});
providerDropzone.on("queuecomplete", function(file) {
location.reload();
});
});
</script>
Я хотел бы иметь возможность отправлять поля date, dueDate и type вместе со всеми загрузками, но, к сожалению, ничего, кроме того, что находится в форме (а employeeID - просто тестовое поле), не отправлено.
Но если я перемещу входные данные в раздел формы, эти поля перекрываются и заполняют фактическую область Dropzone.
Я считаю, что я близок к init
в сценарии Dropzone, но по какой-то причине ни одно из значений других полей не передается вместе с фактической загрузкой файла.
Я открытни к чему, когда дело доходит до этого.