文件夹上传这个功能在web端可能有需求,这里就简单介绍下用法。
目前只有谷歌浏览器还有Microsoft Edge支持按照文件夹进行上传,具体可以看下百度云盘的网页版的上传按钮,在火狐下就支持按照文件进行上传,而在谷歌和Edge下,就会给用户提供一个下拉,让用户选择是根据文件进行上传还是根据文件夹进行上传。
而在谷歌浏览器下,也不是没有条件的支持,必须在input上加入一个属性:webkitdirectory后才会予以支持。

加上后效果就是这样的
附上一个文件夹跟单个文件上传的例子
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.js"></script>
</head>
<body>
<input id="fileFolderMore" type="file" name="file" webkitdirectory/>
<input id="fileFolderOne" type='file' name="file">
</body>
<script>
$('#fileFolderMore').change(function(e){
// console.log(e)
var files = e.target.files;
console.log(files)
})
$('#fileFolderOne').change(function(e){
// console.log(e)
var files = e.target.files;
console.log(files)
})
</script>
</html>
上面文件夹选择后会显示文件夹的路径的
上传的话可以用formData,也可以用form表单。