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 相关文章推荐
JavaScript 构造函数 面相对象学习必备知识
Jun 09 Javascript
JS获取图片实际宽高及根据图片大小进行自适应
Aug 11 Javascript
javascript版的in_array函数(判断数组中是否存在特定值)
May 09 Javascript
通过JS来动态的修改url,实现对url的增删查改
Sep 01 Javascript
jQuery创建DOM元素实例解析
Jan 19 Javascript
Jquery 全选反选实例代码
Nov 19 Javascript
JavaScript设计模式初探
Jan 07 Javascript
微信小程序 下拉菜单的实现
Apr 06 Javascript
微信小程序之自定义组件的实现代码(附源码)
Aug 02 Javascript
JavaScript eval()函数定义及使用方法详解
Jul 07 Javascript
vue监听dom大小改变案例
Jul 29 Javascript
React服务端渲染原理解析与实践
Mar 04 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翻页类
2009/06/01 PHP
PHP 获取MSN好友列表的代码(2009-05-14测试通过)
2009/09/09 PHP
php中使用$_REQUEST需要注意的一个问题
2013/05/02 PHP
用PHP代码给图片加水印
2015/07/01 PHP
php利用嵌套数组拼接与解析json的方法
2017/02/07 PHP
Javascript判断图片尺寸大小实例分析
2014/06/16 Javascript
详解JavaScript ES6中的模板字符串
2015/07/28 Javascript
js获取及判断键盘按键的方法
2015/12/01 Javascript
利用CSS、JavaScript及Ajax实现图片预加载的方法
2016/11/29 Javascript
Javascript 制作图形验证码实例详解
2016/12/22 Javascript
关于javascript获取内联样式与嵌入式样式的实例
2017/06/01 Javascript
浅析JS中常用类型转换及运算符表达式
2017/07/23 Javascript
使用vs code开发Nodejs程序的使用方法
2017/09/21 NodeJs
JavaScript自执行函数和jQuery扩展方法详解
2017/10/27 jQuery
利用Angular2 + Ionic3开发IOS应用实例教程
2018/01/15 Javascript
浅谈Webpack 持久化缓存实践
2018/03/22 Javascript
解决layui中的form表单与button的点击事件冲突问题
2018/08/15 Javascript
js点击事件的执行过程实例分析【冒泡与捕获】
2020/04/11 Javascript
React实现评论的添加和删除
2020/10/20 Javascript
[00:18]天涯墨客三技能展示
2018/08/25 DOTA
在Python程序中实现分布式进程的教程
2015/04/28 Python
Python基于回溯法子集树模板解决m着色问题示例
2017/09/07 Python
pygame实现俄罗斯方块游戏
2018/06/26 Python
Python面向对象之类和对象实例详解
2018/12/10 Python
python为Django项目上的每个应用程序创建不同的自定义404页面(最佳答案)
2020/03/09 Python
Keras自定义IOU方式
2020/06/10 Python
html5标记文字_动力节点Java学院整理
2017/07/11 HTML / CSS
大学在校生求职信范文
2013/11/21 职场文书
小学生手册家长评语
2014/04/16 职场文书
运动会广播稿200字(10篇)
2014/10/12 职场文书
学生评语集锦
2015/01/04 职场文书
音乐教师个人工作总结
2015/02/06 职场文书
实习证明模板
2015/06/16 职场文书
2015中学教学工作总结
2015/07/22 职场文书
一小时迅速入门Mybatis之bind与多数据源支持 Java API
2021/09/15 Javascript
zabbix如何添加监控主机和自定义监控项
2022/08/14 Servers