gpt4 book ai didi

javascript - Dropzone.js 提交多个 id

转载 作者:行者123 更新时间:2023-12-03 01:19:41 25 4
gpt4 key购买 nike

使用 Dropzone 使用不同的 id 将多个文件提交到多个表单但它只提交最后一个id

这是我们用来提交的onclick提交函数

我选择了所有行 ID2.将其收集到具有不同url的ids数组中(forms/upload_files/'id')

这是 Dropzone 功能

     if($('#dropzoneDragArea').length > 0){
submitDropzone = new Dropzone("#id-form", $.extend({},_dropzone_defaults(),{
autoProcessQueue: false,
parallelUploads: 100,
uploadMultiple: true,
clickable: '#dropzoneDragArea',
previewsContainer: '.dropzone-previews',
addRemoveLinks: true,
maxFiles: 2,

}));
}

这是onclick函数

function submit(event) {
var ids = [];

var rows = $('.table-rows').find('tbody tr');
$.each(rows, function() {
var checkbox = $($(this).find('td').eq(0)).find('input');
if (checkbox.prop('checked') == true) {

submitDropzone.options.url = admin_url + 'forms/upload_file/' + checkbox.val();
ids.push(submitDropzone.options.url);

}
});

submitDropzone.processQueue();

}

请问有什么建议吗

最佳答案

要使用相同的 dropzone 将相同的一个或多个文件发送到多个 url,一个选项是处理队列,然后重新对文件进行排队并更新选项中的 url,并为您想要的每个不同的 url 再次处理队列将文件发送到。

假设您已经有 ids 数组,其中填充了您的提交函数的网址:

function submit(event) {

var ids = [];

// populate urls array

// submit the files to each url
for (let i = 0; i < ids.length; i++) {
submitDropzone.options.url = myUrls[i];

submitDropzone.processQueue();

// if there is still urls requeue the files
if (i !== myUrls.length - 1) {
for (let file of submitDropzone.files) {
if (file.status === Dropzone.SUCCESS || file.status === Dropzone.PROCESSING) {
file.status = Dropzone.QUEUED;
}
}
}
}
}

请注意,您必须将状态更改回已排队状态,因​​为 .processQueue() 不会上传已上传或正在处理的文件。

关于javascript - Dropzone.js 提交多个 id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51813801/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com