首页 > 建站教程 > JS、jQ、TS >  webkitdirectory 文件夹上传功能正文

webkitdirectory 文件夹上传功能

    目前谷歌浏览器、Microsoft Edge支持文件夹上传,具体操作方法是:在input type="file"上加入一个属性:webkitdirectory后才支持:
<input type="file" name="file" webkitdirectory />
    加入webkitdirectory后的效果可见下图,当选择文件夹的时候,右下角的按钮直接变成了上传,点击上传会弹出提示:





    注意:上图的弹窗目前取消不了(具体可以参考百度云web端在谷歌浏览器或Edge下的文件夹上传效果)。

    下面是单文件上传和文件夹上传代码示例:
<!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表单。