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 相关文章推荐
IE iframe的onload方法分析小结
Jan 07 Javascript
Jquery Ajax学习实例6 向WebService发出请求,返回DataSet(XML) 异步调用
Mar 18 Javascript
jquery Mobile入门—外部链接切换示例代码
Jan 08 Javascript
javascript动态向网页中添加表格实现代码
Feb 19 Javascript
jquery复选框多选赋值给文本框的方法
Jan 27 Javascript
JS+HTML5实现的前端购物车功能插件实例【附demo源码下载】
Oct 17 Javascript
bootstrap折叠调用collapse()后data-parent不生效的快速解决办法
Feb 23 Javascript
angular2路由之routerLinkActive指令【推荐】
May 30 Javascript
jQuery实现基本隐藏与显示效果的方法详解
Sep 05 jQuery
浅析Vue 中的 render 函数
Feb 28 Javascript
微信小程序 wx.getUserInfo引导用户授权问题实例分析
Mar 09 Javascript
Vue 401配合Vuex防止多次弹框的案例
Nov 11 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
967 个函式
2006/10/09 PHP
把PHP安装为Apache DSO
2006/10/09 PHP
用PHP实现的四则运算表达式计算实现代码
2011/08/02 PHP
php打乱数组二维数组多维数组的简单实例
2016/06/17 PHP
PHP中ajax无刷新上传图片与图片下载功能
2017/02/21 PHP
PHP使用PDO调用mssql存储过程的方法示例
2017/10/07 PHP
php自定义排序uasort函数示例【二维数组按指定键值排序】
2019/06/19 PHP
基于jquery的让页面控件不可用的实现代码
2010/04/27 Javascript
浅析jQuery1.8的几个小变化
2013/12/10 Javascript
jquery移动点击的项目到列表最顶端的方法
2015/06/24 Javascript
浅谈javascript运算符——条件,逗号,赋值,()和void运算符
2016/07/15 Javascript
jquery dataview数据视图插件使用方法
2016/12/23 Javascript
实例教学如何写vue插件
2017/11/30 Javascript
Vue组件中slot的用法
2018/01/30 Javascript
vuex提交state&amp;&amp;实时监听state数据的改变方法
2018/09/16 Javascript
JS实现简单的点赞与踩功能示例
2018/12/05 Javascript
JavaScript寄生组合式继承原理与用法分析
2019/01/11 Javascript
Vue内部渲染视图的方法
2019/09/02 Javascript
layui表格 列自动适应大小失效的解决方法
2019/09/06 Javascript
用js编写留言板
2020/03/17 Javascript
python进阶教程之函数参数的多种传递方法
2014/08/30 Python
Python实现SMTP发送邮件详细教程
2021/03/02 Python
SQLite3中文编码 Python的实现
2017/01/11 Python
python socket网络编程之粘包问题详解
2018/04/28 Python
python xlwt如何设置单元格的自定义背景颜色
2019/09/03 Python
python中urllib.request和requests的使用及区别详解
2020/05/05 Python
如何在.net Winform里面显示PDF文档
2012/09/11 面试题
护理个人求职信范文
2014/01/08 职场文书
就业协议书怎么填
2014/04/11 职场文书
诚信的演讲稿范文
2014/05/12 职场文书
中文专业求职信
2014/06/20 职场文书
幼儿园秋季开学寄语
2014/08/02 职场文书
公司人事专员岗位职责
2014/08/11 职场文书
婚前协议书范本两则
2014/10/16 职场文书
给领导的感谢信范文
2015/01/23 职场文书
Windows安装Anaconda3的方法及使用过程详解
2021/06/11 Python