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 相关文章推荐
弹出广告特效(一个IP只弹出一次)的代码
Jul 27 Javascript
基于jQuery的倒计时插件代码
May 07 Javascript
js单向链表的具体实现实例
Jun 21 Javascript
浅谈javascript六种数据类型以及特殊注意点
Dec 20 Javascript
清除div下面的所有标签的方法
Feb 17 Javascript
JavaScript实现N皇后问题算法谜题解答
Dec 29 Javascript
js实现精美的图片跟随鼠标效果实例
May 16 Javascript
举例讲解AngularJS中的模块
Jun 17 Javascript
基于jquery实现弹幕效果
Sep 29 Javascript
javascript iframe跨域详解
Oct 26 Javascript
vue mint-ui tabbar变组件使用
May 04 Javascript
vue项目中使用scss的方法步骤
May 16 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 file_exists 检查文件或目录是否存在的函数
2010/05/10 PHP
ThinkPHP内置jsonRPC的缺陷分析
2014/12/18 PHP
浅谈PHP中Stream(流)
2015/06/08 PHP
Prototype Number对象 学习
2009/07/19 Javascript
一个可以兼容IE FF的加为首页与加入收藏实现代码
2009/11/02 Javascript
javascript或asp实现的判断身份证号码是否正确两种验证方法
2009/11/26 Javascript
基于jQuery的星级评分插件
2011/08/12 Javascript
jquery eval解析JSON中的注意点介绍
2013/08/23 Javascript
JavaScript中的parse()方法使用简介
2015/06/12 Javascript
如何消除inline-block属性带来的标签间间隙
2016/03/31 Javascript
功能强大的jquery.validate表单验证插件
2016/11/07 Javascript
用move.js库实现百叶窗特效
2017/02/08 Javascript
nodejs之get/post请求的几种方式小结
2017/07/26 NodeJs
Angular 2.0+ 的数据绑定的实现示例
2017/08/09 Javascript
AngularJS通过ng-Img-Crop实现头像截取的示例
2017/08/17 Javascript
基于vue2实现左滑删除功能
2017/11/28 Javascript
vue-star评星组件开发实例
2018/03/01 Javascript
JS实现水平遍历和嵌套递归操作示例
2019/08/15 Javascript
[04:04]显微镜下的DOTA2第六期——电影级别的华丽团战
2014/06/20 DOTA
[01:12](回顾)DOTA2国际邀请赛,全世界DOTAer的盛宴
2014/07/01 DOTA
在Python的框架中为MySQL实现restful接口的教程
2015/04/08 Python
在Django中同时使用多个配置文件的方法
2015/07/22 Python
python实现程序重启和系统重启方式
2020/04/16 Python
PyQt5实现画布小程序
2020/05/30 Python
Python eval函数介绍及用法
2020/11/09 Python
浅谈html5与APP混合开发遇到的问题总结
2018/03/20 HTML / CSS
加拿大花店:1800Flowers.ca
2016/11/16 全球购物
Kathmandu英国网站:新西兰户外运动品牌
2017/03/27 全球购物
2013英文求职信模板范文
2013/11/15 职场文书
高校自主招生自荐信
2013/12/09 职场文书
模具设计与制造专业推荐信
2014/02/16 职场文书
党的群众路线教育实践活动剖析材料
2014/09/30 职场文书
房屋租赁合同协议书范本
2014/10/19 职场文书
公务员年度考核个人总结
2015/02/12 职场文书
横空出世观后感
2015/06/09 职场文书
Apache自带的ab压力测试工具的实现
2022/07/23 Servers