Asp.net 2.0 无刷新图片上传 显示缩略图 具体实现

所属分类: 网络编程 / ASP.NET 阅读数: 846
收藏 0 赞 0 分享

兼容性想还不错:FF,CH,IE,猎豹,都是可以实现的。如果看到回显。当然就是成功了。

经历了好几天的不停的钻牛角尖,终于将这个二货弄出来了。真是煞费苦心啊。但是做出来的瞬间还是蛮开心的。

第一步:我们需要加载几个JS库。
jquery库。
jquery.form.js库。

下载这两个库,并引用到页面中。

以下为页面中 JS 代码:

复制代码 代码如下:

  function upload() {
            var options = {
                type: "POST",                            //当然这个是传送方式
                url: '../Include/Files.ashx',        //一般处理程序的路径
                success: function (msg) {        //返回的参数
                    $("#server_img").attr("src", msg);            //回显图片。
                }
            };
            // 将options传给ajaxForm
            $('#aspnetForm').ajaxSubmit(options);
 }

第二步:一般处理程序内的代码
复制代码 代码如下:

 public void ProcessRequest(HttpContext context)
    {
        HttpFileCollection files = context.Request.Files;              // From中获取文件对象
        if (files.Count > 0)
        {
             string path = "";                                                            //路径字符串
            Random rnd = new Random();
            for (int i = 0; i < files.Count; i++)
            {
                HttpPostedFile file = files[i];                                        //得到文件对象
                if (file.ContentLength > 0)
                {
                    string fileName = file.FileName;
                    string extension = Path.GetExtension(fileName);
                    int num = rnd.Next(5000, 10000);                            //文件名称
                    path = "../../UserFiles/temp/" + num.ToString() + extension;
                    file.SaveAs(System.Web.HttpContext.Current.Server.MapPath(path));        //保存文件。
                }
            }
            context.Response.Write(path);            //返回文件存储后的路径,用于回显。
        }
    }

第三步:html或者aspx中的代码。
    以下两句代码随便插入html或者aspx中的任意位置。想来都是可以实现的。
复制代码 代码如下:

    <img id="server_img" width="360px" style="border: 1px solid #ccc; padding: 2px;"   title="" alt="" />   //用于回显图片
    <asp:FileUpload ID="Up_load" runat="server" onchange="upload()"  ontextchange="upload()"/>        //上传图片,自动的,两个事件是为了保证所有浏览器都兼容。

更多精彩内容其他人还在看

ASP.Net 之Datalist删除功能详解附代码

ASP.Net 之Datalist删除功能详解附代码,需要的朋友可以参考一下
收藏 0 赞 0 分享

ASP.NET(C#)验证数字的两种方法

ASP.NET(C#)验证数字的两种方法,需要的朋友可以参考一下
收藏 0 赞 0 分享

此页的状态信息无效,可能已损坏 的处理办法及原因分析

此页的状态信息无效,可能已损坏 的处理办法及原因分析,需要的朋友可以参考一下
收藏 0 赞 0 分享

MultiLine 换行后实现读取不换行的具体思路

输入内容中有换行,保存到数据库,直接查看感觉没有换行,但查询结果“以文本格式显示结果”你就会发现 其实是有换行的,下面与大家分享下具体的解决方法
收藏 0 赞 0 分享

swfupload ajax无刷新上传图片实例代码

在这里上传图片就需要用到ajax无刷新上传图片,这里面包含的东西不是一点半点。这里用到的是一个插件swfupload实现无刷新上传图片,感兴趣的朋友可以参考下哈
收藏 0 赞 0 分享

静态gb2312编码在项目传值出现中文乱码现象

参考的美工静态页面是gb2312格式的,当此编码拿到项目中后,utf-8编码的系统,加载页面时,会出现样式问题,比如不能正常居中等
收藏 0 赞 0 分享

System.Timers.Timer定时执行程序示例代码

如果是某个逻辑功能的定时,可以将code放到逻辑功能的类的静态构造函数中,在该逻辑类第一次执行时,静态构造函数会被调用,则定时自然启动
收藏 0 赞 0 分享

分享下Asp.Net面试题目及答案集合

这篇文章主要是总结asp.net开发人员在面试过程中常遇到的一些问题小结,需要的朋友可以参考下
收藏 0 赞 0 分享

给自定义Web控件添加事件(前后台代码)

给自定义控件(Web Control)添加事件具体前后台代码如下,感兴趣的朋友可以参考下哈
收藏 0 赞 0 分享

ASP.NET过滤器的应用方法介绍

ASP.NET过滤器的应用方法介绍,需要的朋友可以参考一下
收藏 0 赞 0 分享
查看更多