前端实现iOS上传文件夹
时间: 2023-09-23 16:03:37 浏览: 155
前端实现iOS上传文件夹可以通过使用HTML5中的File API来实现。以下是基本的实现步骤:
1. 创建一个<input type="file" webkitdirectory directory multiple>元素,用于选择文件夹。
2. 监听该元素的change事件,在事件处理函数中获取选择的文件夹中的所有文件。
3. 将文件转换成FormData对象,并使用XMLHttpRequest对象将其发送到服务器。
下面是一个简单的示例代码,用于上传文件夹:
```html
<input id="folder-input" type="file" webkitdirectory directory multiple />
<button id="upload-btn">上传文件夹</button>
<script>
var folderInput = document.getElementById('folder-input');
var uploadBtn = document.getElementById('upload-btn');
uploadBtn.addEventListener('click', function() {
var files = folderInput.files;
if (!files.length) {
alert('请选择文件夹!');
return;
}
var formData = new FormData();
for (var i = 0; i < files.length; i++) {
formData.append('files[]', files[i]);
}
var xhr = new XMLHttpRequest();
xhr.open('POST', '/upload', true);
xhr.onload = function() {
if (xhr.status === 200) {
alert('上传成功!');
} else {
alert('上传失败!');
}
};
xhr.send(formData);
});
</script>
```
需要注意的是,上传文件夹时需要将文件夹下的所有文件转换成FormData对象,并使用XMLHttpRequest对象将其发送到服务器。在示例代码中,我使用了FormData对象的append方法来添加文件到表单中,使用XMLHttpRequest对象的open和send方法将表单发送到服务器。
阅读全文