在好例子网,分享、交流、成长!
您当前所在位置:首页js 开发实例高级JavaScript组件 → HTML5实现分段上传,支持断点续传

HTML5实现分段上传,支持断点续传

高级JavaScript组件

下载此实例
  • 开发语言:js
  • 实例大小:3.77M
  • 下载次数:21
  • 浏览次数:930
  • 发布时间:2018-06-01
  • 实例类别:高级JavaScript组件
  • 发 布 人:zhanglc8801
  • 文件格式:.7z
  • 所需积分:2
 相关标签: HTML5 文件上传 断点续传

实例介绍

【实例简介】

HTML5上传部分参考博客:http://www.cnblogs.com/tianma3798/p/5836369.html

已对js代码进行了封装,可直接调用,另增加了在前端获取文件MD5值以及将支持文件上传到WebService。

使用了SQLite数据库用于保存文件信息(文件名,保存路径,MD5),获取文件MD5部分如集成到项目需更改引用的js文件"GetFileMd5.js"的头部第一行所引用js的路径。

【实例截图】

【核心代码】

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title></title>
    <script src="Scripts/jquery-1.7.2.min.js"></script>
    <script src="Scripts/GetFileMd5/GetFileMd5.js"></script>
    <script src="Scripts/UploadFile.js"></script>
</head>
<body>

    <div>
        <input type="file" id="FileUpload1" runat="server" style="width: 350px; margin-bottom: 5px;" /><br />
        <input type="radio" name="UploadType" value="0" checked="checked" /><label style="margin-left: 2px; margin-top: -2px; vertical-align: middle;">本地</label>&nbsp;
        <input type="radio" name="UploadType" value="1" /><label style="margin-left: 2px; margin-top: -2px; vertical-align: middle;">远程文件服务器</label>
        <br />
        <input type="button" id="BtnUploadFile" onclick="UploadFile()" value="上传" style="width: 60px; height: 22px;  vertical-align: text-bottom;" />
        <progress id="progress" max="100" value="0" style="width: 200px; vertical-align: baseline; display: none;"></progress>
        <label id="Status" style="margin-left: 3px; vertical-align: bottom;"></label>

    </div>


    <script type="text/javascript">
        var fileMd5 = "";
        var IsUpload = 0;//标识文件是否上传
        $("#FileUpload1").change(function () {
            if (this.size > 0)
                IsUpload = -1;
            
        });

        function UploadFile() {
            var file = document.getElementById("FileUpload1").files[0];
            if (file == null) {
                alert("请选择需要上传的文件!");
                return;
            }
            document.getElementById("progress").style.display = "";
            FileMd5Func.GetMd5('FileUpload1', 'progress', 'Status', fileMd5Callback);//获取文件MD5
        }

        function fileMd5Callback(data) {
            fileMd5 = data;
            //设置上传文件夹
            var date = new Date();
            var UpFolder = "Files\\" date.getFullYear() "\\" (date.getMonth() 1);
            var isLocalFile = $("input[name='UploadType']:checked").val();
            $.powerWebUpload({
                fileId: 'FileUpload1',
                GetFileInfoUrl: '/Scripts/GetFileInfo.ashx',
                UploadFileUrl: '/Scripts/UploadFile.ashx',
                StatusId: 'Status',
                progressId: 'progress',
                FileDir: UpFolder,
                IsLocalFile: isLocalFile == 0 ? true : false,
                fileMd5:fileMd5,
                onComplete: function (data) {
                    //alert(data);
                    IsUpload = 1;//标识文件已上传
                    $.ajax({
                        type: "post",
                        url: "Index.aspx/SaveFileInfoAjax",
                        data: "{'data':'" data "'}",
                        contentType: "Application/json;charset=utf-8",
                        success: function (msg) {
                            alert(msg.d);//弹出文件保存地址   
                        }
                    })

                }
            });
        }
    </script>
</body>
</html>

实例下载地址

HTML5实现分段上传,支持断点续传

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警