Надеюсь, что кто-то сможет сказать мне, где я здесь не так.Dropzonejs mulitple зоны с предварительным просмотром файла
Im, использующий Dropzonejs, чтобы люди могли отбрасывать файлы для хранения в Интернете, у меня есть 8 зон на одной странице, каждая из которых используется для другой категории, когда кто-то бросает файл, который они сохраняют, с дополнительными данными в зависимости от того, в какой зоне они были сброшены in для последующего поиска .. это все работает нормально.
Затем я хотел, чтобы каждая зона отображала миниатюры для каждого из файлов на сервере под его категорией на странице обновления, вот где я получаю проблемы, используя код следующего кода, я получаю все мои файлы, отображаемые в нижней зоне , а остальные пустые. Очевидно, что проблема с кодом, который извлекает текущие файлы и создает миниатюры, но Im потерял, почему.
Если у меня есть только один экземпляр на странице, все работает отлично.
Heres код, который я использую для установки и создания экземпляра каждого экземпляра dropzone.
Dropzone.options.dzdiag = {
url: "upload.php",
previewsContainer: "#dzdiag",
init: function() {
thisDropzone = this;
filetype = "diagnostic";
var propid = <?php echo $id; ?>; // set value to current property id
$.get('upload.php?propid='+propid+'&filetype='+filetype, function(data) { // get exisitng files and thumbnail
$.each(data, function(key,value){
var mockFile = { name: value.name, size: value.size, fileid: value.fileid, };
thisDropzone.options.addedfile.call(thisDropzone, mockFile);
var pattern = /\.(gif|jpg|jpeg|tiff|png)$/i;
if(pattern.test(value.name)){
thisDropzone.options.thumbnail.call(thisDropzone, mockFile, "uploads/"+value.name);
}
});
});
thisDropzone.on("sending", function(file, xhr, formData) {
formData.append("propid", propid);
formData.append("filetype", filetype);
});
thisDropzone.on("success", function(file, serverack) {
file.fileid = serverack;
});
thisDropzone.on("removedfile", function(file) {
var delid = file.fileid;
$.post('upload.php?delid='+delid);
});
}
};
$("#dzdiag").dropzone();
нашел ответ .. но не могу его опубликовать из-за 8-часового правила, введенного на этом форуме для новых пользователей! – user3206704