js如何实现带进度条提示的多视频上传功能
更新:HHH   时间:2023-1-7


这篇文章将为大家详细讲解有关js如何实现带进度条提示的多视频上传功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

js有什么特点

1、js属于一种解释性脚本语言;2、在绝大多数浏览器的支持下,js可以在多种平台下运行,拥有着跨平台特性;3、js属于一种弱类型脚本语言,对使用的数据类型未做出严格的要求,能够进行类型转换,简单又容易上手;4、js语言安全性高,只能通过浏览器实现信息浏览或动态交互,从而有效地防止数据的丢失;5、基于对象的脚本语言,js不仅可以创建对象,也能使用现有的对象。

具体内容如下

效果:

引用:

 <link rel="stylesheet" href="bootstrap.css" rel="external nofollow" >
 <script src="jquery.fileupload.js"></script>
 <script src="http://malsup.github.com/jquery.form.js"></script>

html:

<div class="form-group">
      <label>产品视频:</label>
      <div class="videoUpfile">
        <input type="file" name="avatarVideo" class="avatarVideo"><a class="btn deleteAvatarVideo" href="javascript:;" rel="external nofollow" rel="external nofollow" >删除</a>
        <div class="videoMaterials">
          <div class="progress">
            <div class="progress-bar progress-bar-success progress-bar-striped" role="progressbar" aria-valuenow="45" aria-valuemin="0" aria-valuemax="100" >
              <span class="sr-only">0% Complete</span>
            </div>
          </div>
          <div class="files"></div>
          <div class="showimg"></div>
          <input type="hidden" value="" name="video_id[]">
          <p  class="img_upload_info"></p>
        </div>
      </div>
      <div class="videoUpfile">
        <input type="file" name="avatarVideo" class="avatarVideo"><a class="btn deleteAvatarVideo" href="javascript:;" rel="external nofollow" rel="external nofollow" >删除</a>
        <div class="videoMaterials">
          <div class="progress">
            <div class="progress-bar progress-bar-success progress-bar-striped" role="progressbar" aria-valuenow="45" aria-valuemin="0" aria-valuemax="100" >
              <span class="sr-only">0% Complete</span>
            </div>
          </div>
          <div class="files"></div>
          <div class="showimg"></div>
          <input type="hidden" value="" name="video_id[]">
          <p  class="img_upload_info"></p>
        </div>
      </div>
</div>

script:

//上传视频

$(".avatarVideo").change(function() {
  var _this = $(this);
  _this.wrap("<form class='fileUploadeVideo' action='/admin/uploadimg/addVideo' method='post' enctype='multipart/form-data'></form>");
  _this.parents('.fileUploadeVideo').ajaxSubmit({
    dataType: 'json',
    beforeSend: function () {
      $(".progress").show();
    },
    uploadProgress: function (event, position, total, percentComplete) {
      var percentVal = percentComplete + '%';
      _this.parents('.videoUpfile').find(".progress-bar").width(percentComplete + '%');
      _this.parents('.videoUpfile').find(".progress-bar").html(percentVal);
      _this.parents('.videoUpfile').find(".sr-only").html(percentComplete + '%');
    },
    success: function (data) {
      if(data.code==100) {
        _this.parents('.videoUpfile').find(".files").html("文件名: " + data.video_title);
        _this.parents('.videoUpfile').find("input[type=hidden]").val(data.video_id);
        alert("上传成功!");
      }else{
        alert("上传失败");
      }
    },
    error: function () {
      alert("上传失败");
    }
  });

关于“js如何实现带进度条提示的多视频上传功能”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

返回web开发教程...