ajaxfileupload.js实现无刷新异步上传图片Demo

第一步:导入ajaxfileupload.js文件

第二步:新建一个aspx,在body里面创建一个文件域,一个上传按钮

<body>
    <input type="file" name="file" id="fileId" />
    <input type="button"  value="上传" id="uploadBtn" />
    <br />
    <img src="" id="img" />
</body>

第三步:客户端代码

<script>
        $(function () {
            $("#uploadBtn").click(function () {
                $.ajaxFileUpload({
                    url: ‘FileUpload.ashx‘,//执行上传处理的文件地址
                    fileElementId: ‘fileId‘,//file控件的id属性的值,要求这个控件要有name属性,用于在服务器端接收
                    success: function (data) {//成功的回调函数,内部处理会加上html标签,
                        $("#img").attr("src", $(data).text());
                    }
                });
            });
        });
        //$.ajaxFileUpload({
        //    url: ‘PhotoGet.ashx‘,//执行上传处理的文件地址
        //    secureuri: false,//是否加密,一般是false,默认值为false
        //    fileElementId: ‘UploadImg‘,//file控件的id属性的值,要求这个控件要有name属性,用于在服务器端接收
        //    data: {//额外传递的数据,使用json,此时必须设置type为post
        //        type: 1
        //    },
        //    type: ‘post‘,//请求方式,如果传递额外数据,必须是post
        //    success: function (data) {//成功的回调函数,内部处理会加上html标签,data是DOM对象,通过$(data)转成html标签
        //        $("#img1").attr("src", $(data).text());
        //    }
        //});
    </script>

第四步:服务端代码

 public void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType = "text/plain";
            HttpPostedFile file = context.Request.Files["file"];
            if (file!=null)
            {
                string fileName = Path.GetFileName(file.FileName);
                string fileExten = Path.GetExtension(fileName);
                if (fileExten == ".jpg")
                {
                    string dir = "/ImageUpload/" + DateTime.Now.Year + "/" + DateTime.Now.Month + "/" + DateTime.Now.Day + "/";
                    if (!Directory.Exists(context.Request.MapPath(dir)))
                    {
                        Directory.CreateDirectory(context.Request.MapPath(dir));
                    }
                    string fullFilePath = dir + Guid.NewGuid().ToString() + "_" + fileName;
                    file.SaveAs(context.Request.MapPath(fullFilePath));
                    context.Response.Write(fullFilePath);
                }
            }

        }
时间: 2024-10-18 09:01:19

ajaxfileupload.js实现无刷新异步上传图片Demo的相关文章

js实现无刷新上传

在新增数据项的时候,用ajax实现无刷新提交,但上传文件的时候,由于数据类型原因,不能将页面的<asp:FileUpload>中以字符串值的方式传到js里调用.我一共找到了两个方法予以解决,实现无刷新上传. 第一种方法:利用js的ADODB.Stream,将文件先转换成流,再通过js上传到服务器,这样有个好处就是可以上传超大文件,并且由于是数据流,可以支持断点续传.方便显示上传进度等人性化功能.唯一的缺点是要客户端浏览器需要设置安全级别,或者安装相关ActiveX控件(这个控件自己做的,加载到

history.js 一个无刷新就可改变浏览器栏地址的插件(不依赖jquery)

示例: http://browserstate.github.io/history.js/demo/ 简介 HTML4有一些对浏览历史的前进后退API的支持如: window.history.back();window.history.forward();window.history.go(-1);window.history.go(1); HTML5浏览器新添加了不刷新改变网址地址的API: var currentState = history.state;var stateObj = { f

js实现无刷新表单提交文件,将ajax请求转换为form请求方法

最近在做项目的时候遇到一个需要上传文件的需求,因为ajax请求是无法上传二进制文件流的,所以只能用form表单提交,而form提交有一个问题就是会使页面刷新,本文解决了form表单提交文件时页面刷新的问题. 一.无刷新实现form提交文件 将form的target指向为一个iframe就可以实现无刷新提交文件了,但关键是还需要看到后台返回的数据,所以还需要为该iframe注册一个回调函数,因为iframe和该页面在同域内,所以可以在iframe里可以调用该回调函数,就可以看到后台返回的数据了.实

JQUERY AJAX无刷新异步上传文件

AJAX无刷新上传文件并显示 http://blog.csdn.net/gao3705512/article/details/9330637?utm_source=tuicool jQuery Form Plugin 官网地址:http://malsup.com/jquery/form/#tab7 基于MVC4+EasyUI的Web开发框架形成之旅--附件上传组件uploadify的使用 http://www.cnblogs.com/wuhuacong/p/3343967.html

input ,button, textarea 1)使用disabled , 2) 显示值, 3) 表单提交. 4) jquery.form.js ajaxSubmit() 无刷新ajax提交表单.

1.使用disabled input , button  textarea 可以 被 禁用, 禁用的效果 : 1) 上面的点击事件无法使用 --- button       : 下面的 onclick属性 不能使用了. ------------------------- input: ------------------------------ textarea 2. input, textaere 显示 原先 填充的值; input:  写在 value属性上. ---------------

jquery.form 和MVC4做无刷新上传DEMO

HTML: <script src="~/Scripts/jquery-1.10.2.min.js"></script> <script type="text/javascript" src="/Scripts/jquery.form.js"></script> <script type="text/javascript" src="/Scripts/common

SpringMVC结合ajaxfileupload.js实现文件无刷新上传

直接看代码吧,注释都在里面 首先是web.xml [html] view plaincopyprint? <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-

[Ajax] 使用Ajax异步上传图片文件(非Form表单提交)

通过表单Form提交来上传文件的方式这里就不说了: 下面介绍,通过js中使用ajax异步上传图片文件: 新建一个html页面和一个一般处理程序即可: 涉及思路: //发送2次Ajax请求完成js异步上传文件的操作:          //第1次,post 只上传文件,返回文件名name          //第2次,get 根据文件名name定位服务器上的文件,同时根据浏览器传过来的realname重命名服务器上的文件          //(如果有其他参数,也可以通过第2次一并上传) 图片文件

ajaxfileupload.js插件结合一般处理文件实现Ajax无刷新上传

先上几张图更直观展示一下要实现的功能.本功能主要通过Jquery ajaxfileupload.js插件结合ajaxUpFile.ashx一般应用程序处理文件实现Ajax无刷新上传功能,结合NPOI2.0实现数据读取.这个功能在实际工作种经经常使用到,希望能给须要做这方面的人有些帮助. 一.功能页面布局及介绍 1.上传页面布局及input file上传功能 2.上传页面文件正在上传效果 3.上传完毕效果,多文件展示区 二.功能代码实现及资源引用 1.js资源文件引用 html页面js引用.须要引