【发布时间】:2021-03-17 10:24:27
【问题描述】:
使用图像名称及其 url 的列表数组,我尝试设置一个 dropzone 来上传这些图像文件,但我无法获取 dropzone 的单个文件名。
我试过了:
Dropzone.autoDiscover = false;
$(document).ready(function() {
var myDropzone = new Dropzone('#myDropzone', {
url: 'http://localhost/Upload/',
})
upload = Dropzone.forElement("#myDropzone");
imageList = ["Rabbit-Island-beach-850x478.jpg", "Rabbit-Island-Pier-1-850x478.jpg"]
url = "https://blog.camboticket.com/wp-content/uploads/2019/06/"
for (var i = 0; i < imageList.length; i++) {
image_url = url + imageList[i]
console.log(imageList[i])
fetch(image_url)
.then(res => res.blob())
.then(blob => {
// mime = blob['type'].toString().split('/')[0]
// ext = blob['type'].toString().split('/')[1]
// let file = new File([blob], blob.size+'.'+ext, blob);
let file = new File([blob], imageList[i], blob);
upload.addFile(file);
});
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<!-- dropzone cdn -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/dropzone/5.7.6/min/dropzone.min.js" integrity="sha512-KgeSi6qqjyihUcmxFn9Cwf8dehAB8FFZyl+2ijFEPyWu4ZM8ZOQ80c2so59rIdkkgsVsuTnlffjfgkiwDThewQ==" crossorigin="anonymous"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/dropzone/5.7.6/dropzone.min.css" integrity="sha512-jU/7UFiaW5UBGODEopEqnbIAHOI8fO6T99m7Tsmqs2gkdujByJfkCbbfPSN4Wlqlb9TGnsuC0YgUgWkRBK7B9A==" crossorigin="anonymous" />
<div class="dropzone" id="myDropzone"></div>
如此处所示,文件名未定义。如何在这里获得正确的文件名?因为我得到它是为了以正确的文件名提交到服务器?谢谢。
PS:我尝试通过imageList[i]获取文件名,但在fetch()函数中不起作用。
【问题讨论】: