分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 运营维护

上传多个文件

发布时间:2023-09-06 01:30责任编辑:郭大石关键词:暂无标签
上传多个文件



<!DOCTYPE html>
<html lang="en">
<head>
???<meta charset="UTF-8">
???<title>批量上传文件</title>
</head>
<body>
<input type="file" multiple value="上传文件" id="file">
<div class="box">

</div>
</body>
<script>
???let selectFile = document.getElementById(‘file‘);
???let preview = document.getElementsByClassName(‘box‘)[0];
function setSelectFileBehavior(subjects) {
???if(!Array.isArray(subjects)){
???????if(subjects.length) subjects = Array.from(subjects);
???????else subjects = [subjects]
???}
???subjects.forEach(subject => {
???????subject.addEventListener(‘change‘,evt =>{
??????????let fileInput = ?evt.target;
??????????let files = Array.from(fileInput.files);
??????????let URL = window.URL || window.webkitURL;
??????????if(typeof FileReader === ‘function‘){
??????????????files.forEach(file => {
??????????????????let reader = new FileReader();
??????????????????reader.readAsDataURL(file);
??????????????????reader.onload = function (evt) {
??????????????????????let event = new CustomEvent(‘fileselect‘,{
??????????????????????????detail:{
??????????????????????????????dataURL:evt.target.result
??????????????????????????}
??????????????????????});
??????????????????????subject.dispatchEvent(event);
??????????????????}
??????????????})
??????????} else if(URL){
?????????????files.forEach(file => {
???????????????????let blob = URL.createObjectURL(file);
???????????????????let event = new CustomEvent(‘fileselect‘,{
???????????????????????detail:{
???????????????????????????blob:blob
???????????????????????}
???????????????????});
?????????????????subject.dispatchEvent(event);
?????????????});
??????????}
???????})
???})
}
setSelectFileBehavior(selectFile);
selectFile.addEventListener(‘change‘,evt => {
???preview.innerHTML = ‘‘;
});
selectFile.addEventListener(‘fileselect‘,evt => {
???let img = new Image();
???img.src = evt.detail.dataURL || evt.detail.blob;
???img.style.padding = ‘5px‘;
???img.style.height = ‘150px‘;
???preview.appendChild(img);
})
</script>
</html>

上传多个文件

原文地址:http://www.cnblogs.com/QxkWeb/p/8028753.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved