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 27 Javascript
AngularJs 国际化(I18n/L10n)详解
Sep 01 Javascript
Bootstrap table的使用方法
Nov 02 Javascript
简单的jQuery拖拽排序效果的实现(增强动态)
Feb 09 Javascript
angular实现spa单页面应用实例
Jul 10 Javascript
EasyUI Tree树组件无限循环的解决方法
Sep 27 Javascript
Angular4学习教程之HTML属性绑定的方法
Jan 04 Javascript
vue使用websocket的方法实例分析
Jun 22 Javascript
基于Vue.js与WordPress Rest API构建单页应用详解
Sep 16 Javascript
使用p5.js临摹动态图形
Oct 23 Javascript
浅谈v-for 和 v-if 并用时筛选条件方法
Nov 07 Javascript
基于js实现的图片拖拽排序源码实例
Nov 04 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使用POP3读取邮箱接收邮件的示例代码
2020/07/08 PHP
FileUpload 控件 禁止手动输入或粘贴的实现代码
2010/04/07 Javascript
javascript学习笔记(十四) window对象使用介绍
2012/06/20 Javascript
JS比较2个日期间隔的示例代码
2014/04/15 Javascript
JavaScript字符串对象fromCharCode方法入门实例(用于把Unicode值转换为字符串)
2014/10/17 Javascript
jQuery实现的简单折叠菜单(折叠面板)效果代码
2015/09/16 Javascript
jQuery对html元素的取值与赋值实例详解
2015/12/18 Javascript
原生javascript上传图片带进度条【实例分享】
2017/04/06 Javascript
使用vue构建移动应用实战代码
2017/08/02 Javascript
Vue利用canvas实现移动端手写板的方法
2018/05/03 Javascript
Vue slot用法(小结)
2018/10/22 Javascript
Node对CommonJS的模块规范
2019/11/06 Javascript
Django中对通过测试的用户进行限制访问的方法
2015/07/23 Python
Python使用 Beanstalkd 做异步任务处理的方法
2018/04/24 Python
Python简单爬虫导出CSV文件的实例讲解
2018/07/06 Python
Django 拆分model和view的实现方法
2019/08/16 Python
python实现人脸签到系统
2020/04/13 Python
详解用 python-docx 创建浮动图片
2021/01/24 Python
欧迪办公美国官网:Office Depot
2016/08/22 全球购物
FOREO官方网站:LUNA露娜洁面仪
2016/11/28 全球购物
Omio西班牙:全欧洲低价大巴、火车和航班搜索和比价
2017/02/11 全球购物
Cinque网上商店:德国服装品牌
2019/03/17 全球购物
美国购买韩国护肤和美容产品网站:Althea Korea
2020/11/16 全球购物
Linux上比较文件的命令都有哪些
2013/09/28 面试题
后勤园长自我鉴定
2013/10/17 职场文书
组织关系转移介绍信
2014/01/16 职场文书
人事主管岗位职责
2014/01/30 职场文书
大学生见习期满自我鉴定
2014/09/13 职场文书
2014年敬老院工作总结
2014/12/08 职场文书
给老婆的道歉信
2015/01/20 职场文书
春节慰问信范文
2015/02/15 职场文书
辞职信怎么写?你都知道吗?
2019/06/24 职场文书
2019学生会干事辞职信
2019/06/27 职场文书
小学语文教师竞聘演讲稿范文
2019/08/09 职场文书
用position:sticky完美解决小程序吸顶问题的实现方法
2021/04/24 HTML / CSS
图文详解nginx日志切割的实现
2022/01/18 Servers