Jquery ajaxsubmit上传图片实现代码


Posted in Javascript onNovember 04, 2010

而且未建立统一上传函数。于是将代码改造了。心想来个ajax异步上传图片吧,这技术应该很老套了。于是直接打开强大的cnblogs轻松的找到了 这篇文章 直接依葫芦画瓢,将该作者的劳动成果直接“拿来主义了”。很快就把代码全改造了。可是当我把程序发布到服务器上的时问题来了。上传文件失效了!汗~ 都是偷懒造成的恶果。继续打开先前参考的那篇文章。原来作者解释了只能在本地使用而不能发布到服务器上。心想我难道还得用 iframe + http post 这个 郁闷的方式么??

于是不甘心的我打开了更加强大的google,开始全球搜索寻求解决方案,终于功夫不负有心人。找到了 "jquery.form.js" 。

异步上传图片的步骤如下:

1.引用 jquery js 框架(这东西的好处无需多论)后再引用 “jquery.form.js”。
2.建立一般处理程序 ashx。
核心代码如下:
html:

<asp:Content ID="Content3" ContentPlaceHolderID="Head" runat="server"> 
<script src="<%=Url.Content("~/Scripts/jquery-1.4.1.js") %>" type="text/javascript"></script> 
<script src="<%=Url.Content("~/Scripts/jquery.form.js") %>" type="text/javascript"></script> 
<script type="text/javascript"> 
$(function () { 
//上传图片 
$("#btnUpload").click(function () { 
if ($("#flUpload").val() == "") { 
alert("请选择一个图片文件,再点击上传。"); 
return; 
} 
$('#UpLoadForm').ajaxSubmit({ 
success: function (html, status) { 
var result = html.replace("<pre>", ""); 
result = result.replace("</pre>", ""); 
$("#image").attr('src', result); 
alert(result); 
} 
}); 
}); 
});

ashx 如下:
namespace TestMvc.Utility 
{ 
/// <summary> 
/// Summary description for PicUploadHander 
/// </summary> 
public class PicUploadHander : IHttpHandler 
{ public void ProcessRequest(HttpContext context) 
{ 
context.Response.ContentType = "text/plain"; 
//验证上传的权限TODO 
string _fileNamePath = ""; 
try 
{ 
_fileNamePath = context.Request.Files[0].FileName; 
//开始上传 
string _savedFileResult = UpLoadImage(_fileNamePath, context); 
context.Response.Write(_savedFileResult); 
} 
catch 
{ 
context.Response.Write("上传提交出错"); 
} 
}

注:整个上传使用ajax 异步数据,同时jquery回调出上传成功后图片在服务器上的相对路径。总的来说此方式相对传统的上传图片方式要强一些。
本例代码在此下载,FireFox 下测试通过。http://xiazai.3water.com/201011/yuanma/AjaxUploadPic.rar
Javascript 相关文章推荐
写的htc的数据表格
Jan 20 Javascript
使用script的src实现跨域和类似ajax效果
Nov 10 Javascript
基于jQuery实现表单提交验证
Nov 24 Javascript
javascript表单验证和Window详解
Dec 11 Javascript
Bootstrap按钮功能之查询按钮和重置按钮
Oct 26 Javascript
AngularJS动态绑定HTML的方法分析
Nov 07 Javascript
Bootstrap表格制作代码
Mar 17 Javascript
详解webpack介绍&amp;安装&amp;常用命令
Jun 29 Javascript
详解RequireJs官方使用教程
Oct 31 Javascript
vue中element组件样式修改无效的解决方法
Feb 03 Javascript
JavaScript中this关键字用法实例分析
Aug 24 Javascript
js实现弹框效果
Mar 24 Javascript
QUnit jQuery的TDD框架
Nov 04 #Javascript
基于jQuery的仿flash的广告轮播代码
Nov 04 #Javascript
扩展easyui.datagrid,添加数据loading遮罩效果代码
Nov 02 #Javascript
关于document.cookie的使用javascript
Oct 29 #Javascript
深入理解JavaScript定时机制
Oct 29 #Javascript
在JS中最常看到切最容易迷惑的语法(转)
Oct 29 #Javascript
ExtJS 入门
Oct 29 #Javascript
You might like
php 常用算法和时间复杂度
2013/07/01 PHP
php中url函数介绍及使用示例
2014/02/13 PHP
PHP文件及文件夹操作之创建、删除、移动、复制
2016/07/13 PHP
PHP多进程之pcntl_fork的实例详解
2017/10/15 PHP
YII框架模块化处理操作示例
2019/04/26 PHP
json 实例详细说明教程
2009/10/31 Javascript
匹配任意字符的正则表达式写法
2010/04/29 Javascript
juqery 学习之四 筛选查找
2010/11/30 Javascript
简单的jquery拖拽排序效果实现代码
2011/09/20 Javascript
关于JS数组追加数组采用push.apply的问题
2014/06/09 Javascript
jQuery实现点击小图片淡入淡出显示大图片特效
2015/09/09 Javascript
实践中学习AngularJS表单
2016/03/21 Javascript
在网页中插入百度地图的步骤详解
2016/12/02 Javascript
解决微信内置浏览器返回上一页强制刷新问题方法
2017/02/05 Javascript
微信小程序商城项目之淘宝分类入口(2)
2017/04/17 Javascript
Angular 2父子组件数据传递之@Input和@Output详解(下)
2017/07/05 Javascript
javascript  删除select中的所有option的实例
2017/09/17 Javascript
vue获取当前点击的元素并传值的实例
2018/03/09 Javascript
JavaScript设计模式之工厂模式简单实例教程
2018/07/03 Javascript
ES6中let、const的区别及变量的解构赋值操作方法实例分析
2019/10/15 Javascript
Vue中使用better-scroll实现轮播图组件
2020/03/07 Javascript
使用Typescript开发微信小程序的步骤详解
2021/01/12 Javascript
[07:06]2018DOTA2国际邀请赛寻真——卫冕冠军Team Liquid
2018/08/10 DOTA
压缩包密码破解示例分享(类似典破解)
2014/01/17 Python
一波神奇的Python语句、函数与方法的使用技巧总结
2015/12/08 Python
全面了解Python的getattr(),setattr(),delattr(),hasattr()
2016/06/14 Python
读取本地json文件,解析json(实例讲解)
2017/12/06 Python
Tensorflow之构建自己的图片数据集TFrecords的方法
2018/02/07 Python
python使用epoll实现服务端的方法
2018/10/16 Python
详解Python 函数如何重载?
2019/04/23 Python
如何使用python把ppt转换成pdf
2019/06/29 Python
jupyter notebook 使用过程中python莫名崩溃的原因及解决方式
2020/04/10 Python
同步和异步有何异同,在什么情况下分别使用他们
2013/04/09 面试题
自考生毕业自我鉴定
2013/10/10 职场文书
船舶工程技术专业求职信
2014/08/07 职场文书
Nginx中使用Lua脚本与图片的缩略图处理的实现
2022/03/18 Servers