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 相关文章推荐
打造基于jQuery的高性能TreeView(asp.net)
Feb 23 Javascript
简单实用jquery版三级联动select示例
Jul 04 Javascript
js生成缩略图后上传并利用canvas重绘
May 15 Javascript
jQuery判断checkbox是否选中的3种方法
Aug 12 Javascript
Javascript添加监听与删除监听用法详解
Dec 19 Javascript
JavaScript多态与封装实例分析
Jul 27 Javascript
JavaScript常用数组操作方法,包含ES6方法
May 10 Javascript
JS实现图片拖拽交换效果
Nov 30 Javascript
如何实现小程序tab栏下划线动画效果
May 18 Javascript
vue 集成 vis-network 实现网络拓扑图的方法
Aug 07 Javascript
layer的prompt弹出框,点击回车,触发确定事件的方法
Sep 06 Javascript
vue实现下拉菜单树
Oct 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
德生PL330的评价与改造
2021/03/02 无线电
深入理解php的MySQL连接类
2013/06/07 PHP
PHP调用Linux命令权限不足问题解决方法
2015/02/07 PHP
PHP二维数组去重算法
2016/12/17 PHP
用PHP做了一个领取优惠券活动的示例代码
2019/07/05 PHP
jQuery学习7 操作JavaScript对象和集合的函数
2010/02/07 Javascript
Javascript图像处理—虚拟边缘介绍及使用方法
2012/12/27 Javascript
事件冒泡是什么如何用jquery阻止事件冒泡
2013/03/20 Javascript
利用jquery包将字符串生成二维码图片
2013/09/12 Javascript
javascript为下拉列表动态添加数据项
2014/05/23 Javascript
JavaScript模拟可展开、拖动与关闭的聊天窗口实例
2015/05/12 Javascript
基于JavaScript实现Tab选项卡切换效果
2016/11/24 Javascript
jquery.uploadView 实现图片预览上传功能
2017/08/10 jQuery
nodejs对express中next函数的一些理解
2017/09/08 NodeJs
js保留两位小数方法总结
2018/01/31 Javascript
vue组件的写法汇总
2018/04/12 Javascript
详解Nodejs内存治理
2018/05/13 NodeJs
Javascript实现动态时钟效果
2018/11/17 Javascript
基于vue的验证码组件的示例代码
2019/01/22 Javascript
微信小程序云开发实现增删改查功能
2019/05/17 Javascript
JavaScript RegExp 对象用法详解
2019/09/24 Javascript
[02:34]肉山说——泡妞篇
2014/09/16 DOTA
Django框架中的对象列表视图使用示例
2015/07/21 Python
详解Django模版中加载静态文件配置方法
2019/07/21 Python
Python 实现OpenCV格式和PIL.Image格式互转
2020/01/09 Python
python实现拼图小游戏
2020/02/22 Python
浅析python中的del用法
2020/09/02 Python
python 实现图片裁剪小工具
2021/02/02 Python
html5 分层屏幕适配的方法
2018/03/16 HTML / CSS
加拿大著名时装品牌:SOIA & KYO
2016/08/23 全球购物
Theory美国官网:后现代都市风时装品牌
2018/05/09 全球购物
世界领先的电子书网站:eBooks.com(在线购买小说、非小说和教科书)
2019/03/30 全球购物
井冈山红色之旅感想
2014/10/07 职场文书
2015国庆节感想
2015/08/04 职场文书
pytorch实现手写数字图片识别
2021/05/20 Python
使用CSS实现一个搜索引擎的原理解析
2021/09/25 HTML / CSS