今天在这里介绍一下ajax上传文件。其实也不算是真的使用xmlhttprequest上传,只是使用了iframe实现了无刷新上传而已,最多也只算 是仿ajax上传文件。然而网上关于使用xmlhttprequest上传文件的却是少之又少。即使有,对其他浏览器的兼容也是不敢恭维。到是有专门的公 司提供这样的解决方案,如:ajaxuploader.com提供各式各样的ajax上传方式。呵呵,只是它不是开源而且是针对.net平台的。废话少说了,我们今天就使用jquery+iframe来实现无刷新上传。以下是解决方案图:

(图1)

下面是上传完的界面:

接下来看一下主要代码:

1、在default.aspx页面,先引用jquery及其插件:

<script type="text/javascript" src="scripts/jquery.js"></script>
 <script type="text/javascript" src="scripts/interface.js"></script>

2、接着我们来看一下default.aspx页面的jquery代码,注解已经都在里面的,相信只要会jquery都能看得懂,我就不再啰嗦了。

Code

3、再来看一下upload.aspx页面都有哪些东西。

Code

当然在这个页面你也得做第一步该做的事,谁叫我们都用上了jquery呢,呵呵。

4、upload.aspx页面元素都有哪些呢?

Code

记住一定要给form的method、enctype属性分别赋上"post"、"multipart/form-data",这样才能保证upload.aspx.cs里面可以获取到上传的文件信息。

5、最后看一下upload.aspx.cs代码,都是些上传文件的代码,我只贴出部分的主要代码。

Code

WriteJs方法为:

Code

好了!至此,整个例子就都完成了。

可能逻辑上讲得不是很好,请大家多多谅解啊!

.net ajax式上传文件的更多相关文章

  1. Ajax方式上传文件

    用到两个对象 第一个对象:FormData 第二个对象:XMLHttpRequest 目前新版的Firefox 与 Chrome 等支持HTML5的浏览器完美的支持这两个对象,但IE9尚未支持 For ...

  2. koa2:通过Ajax方式上传文件,使用FormData进行Ajax请求

    koa2通过表单上传的网上很多,但通过Ajax方式上传文件,使用FormData进行Ajax请求,不好找. 参考了这个用base64上传图片的例子.https://github.com/Yuki-Mi ...

  3. (23)ajax实现上传文件的功能

    form表单上传文件 urls.py from django.conf.urls import urlfrom django.contrib import adminfrom app01 import ...

  4. SSM框架下,使用ajax请求上传文件(doc\docx\excel\图片等)

    1.准备工作 1.1.添加上传必要jar包 <dependency> <groupId>commons-io</groupId> <artifactId> ...

  5. ajax异步上传文件和表单同步上传文件 的区别

    1. 用表单上传文件(以照片为例)-同步上传 html部分代码:这里请求地址index.php <!DOCTYPE html> <html lang="en"&g ...

  6. ajax如何上传文件(整理)

    ajax如何上传文件(整理) 一.总结 一句话总结:用FormData,FormData+ajax=异步上传二进制文件 <form enctype="multipart/form-da ...

  7. django中通过文件和Ajax来上传文件

    一.通过form表单来上传文件 1.在html模板中 <form action="/index/" method="post" enctype=" ...

  8. 基于Flask开发网站 -- 前端Ajax异步上传文件到后台

    大家好,我是辰哥~ 辰哥最近利用空闲时间在写一个在线可视化平台,过程中也觉得一些技术还是比较有意思的,所以就以模块化的形式分享出来.如:从网页界面(前端)上传文件到服务器(后端). 放一下该模块的界面 ...

  9. ajax实现上传文件

      1.html部分 <input style="width: 280px" type="file" name="upLoadProjectPl ...

随机推荐

  1. mongoDB中的连接池(转载)

    一.mongoDB中的连接池 刚上手MongoDB,在做应用时,受以前使用关系型数据库的影响,会考虑数据库连接池的问题! 关系型数据库中,我们做连接池无非就是事先建立好N个连接(connection) ...

  2. 取正在运行的DLL或EXE的路径

    function GetSelfPath: string;var  ModuleName: string;  i: Integer;begin  SetLength(ModuleName, 255); ...

  3. Filter 配置多个URL-PATTERN

    Filter 配置多个URL-PATTERN 最近做项目遇到一个Filter需要配置多个url-pattern,上网查了下资料,经测试,现总结下 一.完全错误的方式  Java代码   <fil ...

  4. PAT 1034. Head of a Gang (30)

    题目地址:http://pat.zju.edu.cn/contests/pat-a-practise/1034 此题考查并查集的应用,要熟悉在合并的时候存储信息: #include <iostr ...

  5. Java 动态生成 复杂 .doc文件

    阅读目录 1.word 里面调整好排版,包括你想生成的动态部分,还有一些不用生成的规则性的文字 2. 将 word 文档保存为 xml 3.用 Firstobject free XML edito 打 ...

  6. Log4E

    工具地址:http://marketplace.eclipse.org/content/log4e Log4E插件能够帮助你在Java项目中轻松地创建记录器.它可以在以下几个任务中提供帮助:记录器声明 ...

  7. Hyper-V虚机跨NUMA节点性能影响

    查看单个NUMA节点的内存大小: Hyper-V VM VID NUMA节点\PageCount:83769708376970*4k/1024/1024=32GB Hyper-V VM VID NUM ...

  8. Bluetooth in Android 4.2 and 4.3(三):Enable Bluetooth

    以下是基于Android 4.2代码,对Bluetooth BR/EDR Enable process的分析.BluetoothAdapter类代表的是local device Bluetooth a ...

  9. j2ee学习笔记 javascript 学习

    JavaScript 组成: ECMAScript + BOM + DOM Window对象是JS中的顶层对象 ECMAScript: 规定了一些语法,变量,for循环等等结构 BOM: Browse ...

  10. laydate JS日期插件

    原文出处 简要介绍 你是时候换一款日期控件了,而layDate非常愿意和您成为工作伙伴.她致力于成为全球最用心的web日期支撑,为国内外所有从事web应用开发的同仁提供力所能及的动力.她基于原生Jav ...