日期:2014-05-18  浏览次数:20618 次

asp.net上传文件进度条
HTML code

<script type="text/javascript">
        function al(msg)
        {
            alert(msg);
        }
    </script>
<body>
    <form id="form1" target="UploadWindow" method="post" action="upload.aspx" enctype="multipart/form-data">
            <div>
                <div>
                    请选择文件<input id="upload" name="upload" type="file" />
                    <input id="UploadFile" type="submit" value="上传" />
                </div>
            </div>
            <div class="probar" id="prossbar"><div id="bar" class="bar"></div></div>
        </form>
    <iframe name="UploadWindow" frameborder="0" scrolling="no" width="0" height="0">
    </iframe>
</body>


C# code

if (!IsPostBack)
        {
            HttpPostedFile postfile = Request.Files["upload"];
            if (postfile != null && postfile.ContentLength != 0)
            {
                string path = Server.MapPath(@"~/upload");
                string filename = Path.GetFileName(postfile.FileName);
                int contentlength = postfile.ContentLength;
                int uploadlength = 0;
                int bufferSize = 1;
                byte[] buffer = new byte[bufferSize];
                using (FileStream fs = new FileStream(Path.Combine(path , filename), FileMode.Create))
                {
                    while (uploadlength < contentlength)
                    {
                        int bytes = postfile.InputStream.Read(buffer, 0, bufferSize);
                        fs.Write(buffer, 0, bytes);
                        uploadlength += bytes;
                        int percente = (int)Math.Ceiling((double)uploadlength / (double)contentlength * 100);
                        Response.Write("<script>window.parent.document.getElementById('bar').innerHTML='" + percente + "'</script>");
                        Thread.Sleep(100);
                    }
                }
                Response.Write("<script>window.parent.al('" + uploadlength + "')</script>");
            }
            else
                Response.Write("<script>window.parent.al('请选择文件!')</script>");
        }

研究了一天了
而且也参照别人的!之前论坛里有个大侠发了个十种风格的进度条,可惜是asp的,看着有点吃力
还有看到一些网上有进度条,可惜不是上传的,他是读了一个静态页面
大侠可以帮我看看我的代码,该哪里改呢
一直实现不了!

------解决方案--------------------
学习下。
------解决方案--------------------
http://www.uploadify.com/download/

这个下载了就可以用了,功能比较强大
------解决方案--------------------
帮顶 等待高人.............
------解决方案--------------------
进来学习下
------解决方案--------------------
我有调试好的例子,你留下邮箱,我发给你
------解决方案--------------------
帮顶!
------解决方案--------------------
Response.Write("<div id='mydiv' >");
Response.Write("_");
Response.Write("</div>");
Response.Write("<script>mydiv.innerText = '';</script>");
Response.Write("<script language=javascript>;");