javascript前端实现多视频上传


Posted in Javascript onDecember 13, 2020

本文实例为大家分享了javascript前端实现多视频上传的具体代码,供大家参考,具体内容如下

效果图如下:

javascript前端实现多视频上传

其实拿电视剧来举例子更合适,比如要添加一个电视剧,而这部电视剧有很多集,而如果视频格式是m3u8格式的话,就和我的一样了,就需要同时选中很多个文件,这个时候就需要用到这样类似的功能了。

代码如下:

<style>
.line {
 width: 80%;
 height: 1px;
 border-top: solid RGB(85, 175, 230) 1px;
 margin: 0 auto;
}
</style>

<form enctype="multipart/form-data">
 <div class="class">
 <div class="form-group col-md-12 col-xs-12">
 <label class="col-md-3 col-xs-12">请输入课程名称</label>
 <div class="col-md-9 col-xs-12">
  <input type="text" id="addClassName" class="form-control"
   name="addClassName[]">
 </div>
 </div>
 <div class="form-group col-md-12 col-xs-12">
 <label class="col-md-3 col-xs-12">请选择视频</label>
 <div class="col-md-9 col-xs-12">
  <input onchange="selectVideos(this)" type="file" id="uploadVideos" name="file[]" multiple>
 </div>
 </div>
 
 <div class="form-group col-md-12 col-xs-12">
 <label class="col-md-3 col-xs-12">请输入第几节:</label>
 <div class="col-md-9 col-xs-12">
  <input type="text" class="form-control" name="sort[]"
   placeholder="第1节就输入1"
   required value="">
 </div>
 </div>
 <div class="form-group col-md-12 col-xs-12">
 <div class="line"></div>
 </div>
 </div>
 
 <div class="modal-footer" style="border-top:transparent;">
 <button type="button" class="btn btn-info" onclick="addVideos()" style="margin-right: 700px">添加视频
 </button>
 <button type="button" onclick="addSubmit()" class="btn btn-primary">确认提交</button>
 <button type="button" class="btn btn-default" data-dismiss="modal">取消</button>
 </div>
</form>

<script>
 var fileCountList = [];
 // 添加视频按钮
 function addVideos() {
 let addDom = "<div class='form-group col-md-12 col-xs-12'><label class='col-md-3 col-xs-12'>请输入课程名称</label><div class='col-md-9 col-xs-12'><input type='text' class='form-control' name='addClassName[]'> </div></div><div class='form-group col-md-12 col-xs-12'><label class='col-md-3 col-xs-12'>请选择视频</label><div class='col-md-9 col-xs-12'> <input type='file' name='file[]' multiple οnchange='selectVideos(this)'></div></div> <div class='form-group col-md-12 col-xs-12'><label class='col-md-3 col-xs-12'>请输入第几节:</label><div class='col-md-9 col-xs-12'><input type='text' class='form-control' name='sort[]' placeholder='第1节就输入1' required></div></div><div class='form-group col-md-12 col-xs-12'><div class='line'></div> </div>";
 $('.class').append(addDom)
 }
 // 获取选择视频的个数(因为目前我写的是上传m3u8文件,所以需要用这个来告诉后端每一集有多少个ts文件,如果是上传mp4文件的话,我猜是不用说明这个的,不过我没有尝试过)
 function selectVideos(obj) {
 let fileCount = obj.files.length;
 fileCountList.push(fileCount);
 }
 // 确认提交按钮
 function addSubmit() {
 // 在使用FormData提交数据的时候,需要用原生的js,不能使用jQuery,如果要使用jQuery获取的话,需要将jQuery获取到的对象转换成原生的DOM节点,具体的可以看我之前的一篇文章
 // 这个时候如果使用console.log(formData)是看不到数据的,但是不要怀疑,按照下面的操作仍然是可以把数据提交上去的
 let formData = new FormData(document.getElementById('uploadVideosForm'));
 // 向formData中添加数据
 formData.append('fileCountList',fileCountList);
 $.ajax({
  url: '上传视频的路径',
  method: 'post',
  processData: false,
  contentType: false,
  dataType: "json",
  data: formData,
  success: function (data) {
 console.log(data)
  }
 })
 }
</script>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript 中的类和闭包
Jan 08 Javascript
Js控制弹窗实现在任意分辨率下居中显示
Aug 01 Javascript
jquery为页面增加快捷键示例
Jan 31 Javascript
js实现checkbox全选和反选示例
May 01 Javascript
jsPDF导出pdf示例
May 02 Javascript
浅析node.js中close事件
Nov 26 Javascript
js仿小米官网图片轮播特效
Sep 29 Javascript
Node.js制作简单聊天室
Jan 12 Javascript
javascript中递归的两种写法
Jan 17 Javascript
详解小程序如何改变onLoad的执行时机
Nov 01 Javascript
使用node-media-server搭建一个简易的流媒体服务器
Jan 20 Javascript
基于JavaScript实现年月日三级联动
Jun 22 Javascript
vue使用element-ui实现表单验证
Dec 13 #Vue.js
vue+element实现动态加载表单
Dec 13 #Vue.js
js实现滚动条自动滚动
Dec 13 #Javascript
vue实现两个区域滚动条同步滚动
Dec 13 #Vue.js
vue实现滚动鼠标滚轮切换页面
Dec 13 #Vue.js
js实现简单的轮播图效果
Dec 13 #Javascript
jquery实现淡入淡出轮播图效果
Dec 13 #jQuery
You might like
PHP使用GIFEncoder类处理gif图片实例
2014/07/01 PHP
Yii入门教程之目录结构、入口文件及路由设置
2014/11/25 PHP
PHP查找与搜索数组元素方法总结
2015/06/12 PHP
Lumen timezone 时区设置方法(慢了8个小时)
2018/01/20 PHP
javascript打印输出json实例
2013/11/11 Javascript
javascript+ajax实现产品页面加载信息
2015/07/09 Javascript
JavaScript中获取Radio被选中的值
2015/11/11 Javascript
理解JavaScript表单的基础知识
2016/01/25 Javascript
js拖拽的原型声明和用法总结
2016/04/04 Javascript
深入理解Javascript中的自执行匿名函数
2016/06/03 Javascript
关于react-router/react-router-dom v4 history不能访问问题的解决
2018/01/08 Javascript
Bootstrap table中toolbar新增条件查询及refresh参数使用方法
2018/05/18 Javascript
对angular2中的ngfor和ngif指令嵌套实例讲解
2018/09/12 Javascript
vue使用i18n实现国际化的方法详解
2019/09/05 Javascript
nodejs一个简单的文件服务器的创建方法
2019/09/13 NodeJs
基于vue.js实现购物车
2020/01/15 Javascript
vue.js iview打包上线后字体图标不显示解决办法
2020/01/20 Javascript
js实现拖拽元素选择和删除
2020/08/25 Javascript
[53:50]CHAOS vs Mineski 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/18 DOTA
速记Python布尔值
2017/11/09 Python
python生成器,可迭代对象,迭代器区别和联系
2018/02/04 Python
python搭建服务器实现两个Android客户端间收发消息
2018/04/12 Python
Django 使用Ajax进行前后台交互的示例讲解
2018/05/28 Python
Python文件读写常见用法总结
2019/02/22 Python
通过实例解析Python文件操作实现步骤
2020/09/21 Python
python gui开发——制作抖音无水印视频下载工具(附源码)
2021/02/07 Python
企业党员个人自我评价
2014/09/20 职场文书
科长个人四风问题整改措施思想汇报
2014/10/13 职场文书
先进个人事迹材料
2014/12/29 职场文书
测量员岗位职责
2015/02/14 职场文书
2016年小学生清明节广播稿
2015/12/17 职场文书
《分数的意义》教学反思
2016/02/20 职场文书
详解Python requests模块
2021/06/21 Python
Nginx+Windows搭建域名访问环境的操作方法
2022/03/17 Servers
分析SQL窗口函数之排名窗口函数
2022/04/21 Oracle
关于的python五子棋的算法
2022/05/02 Python