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 相关文章推荐
Display SQL Server Version Information
Jun 21 Javascript
JavaScript编写检测用户所使用的浏览器的代码示例
May 05 Javascript
Sortable.js拖拽排序使用方法解析
Nov 04 Javascript
完全深入学习Bootstrap表单
Nov 28 Javascript
微信开发之调起摄像头、本地展示图片、上传下载图片实例
Dec 08 Javascript
vue.js使用v-if实现显示与隐藏功能示例
Jul 06 Javascript
不得不知的ES6小技巧
Jul 28 Javascript
微信小程序实现购物车代码实例详解
Aug 29 Javascript
JavaScript中的this原理及6种常见使用场景详解
Feb 14 Javascript
TypeScript 引用资源文件后提示找不到的异常处理技巧
Jul 15 Javascript
Jquery+javascript实现支付网页数字键盘
Dec 21 jQuery
解决vue项目本地启动时无法携带cookie的问题
Feb 06 Vue.js
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
PL-880隐藏功能
2021/03/01 无线电
PHP动态分页函数,PHP开发分页必备啦
2011/11/07 PHP
关于更改Zend Studio/Eclipse代码风格主题的介绍
2013/06/23 PHP
显示youtube视频缩略图和Vimeo视频缩略图代码分享
2014/02/13 PHP
php面向对象与面向过程两种方法给图片添加文字水印
2015/08/26 PHP
PHP共享内存用法实例分析
2016/02/12 PHP
PHP获取星期几的常用方法小结
2018/12/18 PHP
Thinkphp 框架扩展之类库扩展操作详解
2020/04/23 PHP
javascript之AJAX框架使用说明
2010/04/24 Javascript
Jquery each方法跳出循环,并获取返回值(实例讲解)
2013/12/12 Javascript
jquery中交替点击事件的实现代码
2014/02/14 Javascript
JS实现的鼠标跟随代码(卡通手型点击效果)
2015/10/26 Javascript
jquery基础知识第一讲之认识jquery
2016/03/17 Javascript
AngularJs  Creating Services详解及示例代码
2016/09/02 Javascript
JS中this上下文对象使用方式
2016/10/09 Javascript
[54:02]2018DOTA2亚洲邀请赛 4.1 小组赛 B组 IG vs VGJ.T
2018/04/03 DOTA
python cookielib 登录人人网的实现代码
2012/12/19 Python
Python实现栈的方法
2015/05/26 Python
通过Python爬虫代理IP快速增加博客阅读量
2016/12/14 Python
浅谈Django自定义模板标签template_tags的用处
2017/12/20 Python
Python带动态参数功能的sqlite工具类
2018/05/26 Python
浅谈Tensorflow由于版本问题出现的几种错误及解决方法
2018/06/13 Python
对python制作自己的数据集实例讲解
2018/12/12 Python
pycharm配置pyqt5-tools开发环境的方法步骤
2019/02/11 Python
Django CSRF认证的几种解决方案
2020/03/03 Python
python GUI库图形界面开发之PyQt5滚动条控件QScrollBar详细使用方法与实例
2020/03/06 Python
浅谈Python3多线程之间的执行顺序问题
2020/05/02 Python
keras中的History对象用法
2020/06/19 Python
cookies应对python反爬虫知识点详解
2020/11/25 Python
HTML5重塑Web世界它将如何改变互联网
2012/12/17 HTML / CSS
HTML5+JS实现俄罗斯方块原理及具体步骤
2013/11/29 HTML / CSS
linux面试题参考答案(10)
2013/11/04 面试题
干部行政关系介绍信
2014/01/17 职场文书
《草原的早晨》教学反思
2014/04/08 职场文书
哈姆雷特读书笔记
2015/06/29 职场文书
JavaScript的Set数据结构详解
2022/02/18 Javascript