文件上传有很多jQuery插件,一般我最为常用的就是uploadify.js和ajaxfileupload.js,二者都是以file标签为依托,前者需要在页面初始化时就渲染插件,比较适合单纯的文件上传 ,如果用户操作完之后(比如选择了某个单选框或者复选框)再点击上传往后台传递的参数不会发生改变,只能页面初始化的时候把相应的参数写到formData对象中,但是样式比较好看一些;后者实用唯一的缺憾就是需要自己去设计样式。下面分别介绍二者使用。

uploadify.js:

            $('#file').uploadify({//前台file标签id
'formData': { 'Method': 'UploadFile' },//提交参数
'auto': true, //默认值是true,默认自动上传 ,自动上传文件会上传所有的文件,但是一个一个上传的
'multi': false, //默认值true 选择框内可同时选择多个文件,此处false只能选择一个
'uploadLimit': 30, //上传个数显示,一次只能上传一个
'width': 140,
'height': 20,
'fileSizeLimit': '50MB',
'fileTypeDesc': '上传附件类型',
'fileTypeExts': '*.doc;*.docx;*.xls;*.xlsx;*.jpg;*.png;*.bmp;*.pdf;*.txt;', //选择的格式
'fileObjName': 'Filedata', //后台获取到的文件的名称
'buttonText': '浏览',
'swf': '../../../../uploadify/uploadify.swf',
'queueID': 'queue',//用于显示上传过程或作其他处理
'uploader': Attachements.url, //后台处理上传的URL
'onUploadError': function (event, ID, fileObj, errorObj) {
if (errorObj.type.toLowerCase() == 'file size') {
$.messager.alert('系統提示', '文件太大,限值50MB', 'error');
}
},
'onUploadSuccess': function (file, data, response) {
//上传成功操作
}
});
html:<div id="queue"></div><input type='file' id='file'/>

ajaxfileupload.js      

              $.ajaxFileUpload({
url: 'webs/Sewage/AJAX/ImportData.ashx?Type=DataImport&SheetName=' + escape(sheetName),
type: 'post',
secureuri: false,
fileElementId: 'file1',
dataType: 'text',//或‘json’
success: function (msg, status) {
if (msg.indexOf("ok") > 0)
alert("数据导入成功!点击\"查看日志\"查看本次导入日志记录。");
else if (msg.indexOf("error") > 0) {
alert("数据导入完成,但导入过程出现错误!点击\"查看日志\"查看错误信息。");
}
else
alert(msg)
$('#file1').val('');
}
});
<pre name="code" class="javascript"> html:<input type='file' id='file1' name='file1'/> <!--注意使用ajaxfileupload.js时html标签需要添加name属性否则后台获取不到数据-->


后台代码:

                //HttpFileCollection file = HttpContext.Current.Request.Files; 或使用这个方式   获取form所有上传的内容返回的是一个集合
HttpPostedFile file = HttpContext.Current.Request.Files["file1"];//
if (file.FileName.EndsWith("xls"))
extension = ".xls";
else
extension = ".xlsx";
//path = "ImportData"+DateTime.Now.ToString("yyyyMMddmmss") + Path.GetExtension(file.FileName).ToLower();
 path = DateTime.Now.ToString("yyyyMMddHHmmss")+"ImportData"+extension;
string filePath=HttpContext.Current.Server.MapPath("~/uploadfiles/" + path);
file.SaveAs(filePath);

jquery插件文件上传的更多相关文章

  1. jquery插件----文件上传uploadfile

    使用了一款jquery上传的插件,ajax上传,可以显示上传的进度,高可配性,简要记录. 插件地址http://hayageek.com/docs/jquery-upload-file.php git ...

  2. jQuery上传插件,文件上传测试用例

    jQuery上传插件,文件上传测试用例 jQuery File Upload-jQuery上传插件介绍http://www.jq22.com/jquery-info230 jQuery File Up ...

  3. 使用jquery插件uploadify上传文件的方法与疑问

    我是学生一枚,专业也不是计算机,但又要用到很多相关技术,所以在技术基础不牢靠的情况下,硬着头皮在做.最近在做一个小项目需要上传图片,而且是需要用ajax的方式.但是利用jquery的ajax方法总会有 ...

  4. jquery uploadify文件上传插件用法精析

      jquery uploadify文件上传插件用法精析 CreationTime--2018年8月2日11点12分 Author:Marydon 一.参数说明 1.参数设置 $("#fil ...

  5. jQuery.uploadify文件上传组件实例讲解

    1.jquery.uploadify简介 在ASP.NET中上传的控件有很多,比如.NET自带的FileUpload,以及SWFUpload,Uploadify等等,尤其后面两个控件的用户体验比较好, ...

  6. 详解jQuery uploadify文件上传插件的使用方法

    uploadify这个插件是基于js里面的jquery库写的.结合了ajax和flash,实现了这个多线程上传的功能. 现在最新版为3.2.1. 在线实例 实例中用到的php文件UploaderDem ...

  7. jQuery uploadify 文件上传

    uploadify这个插件是基于js里面的jquery库写的.结合了ajax和flash,实现了这个多线程上传的功能.现在最新版为3.2.1. 在线实例 实例预览 Uploadify 在线实例Demo ...

  8. 兼容ie的jquery ajax文件上传

    Ajax文件上传插件很多,但兼容性各不一样,许多是对ie不兼容的,另外项目中是要求将网页内容嵌入到桌面端应用的,这样就不允许带flash的上传插件了,如:jquery uploadify...悲剧 对 ...

  9. jquery.uploadify文件上传组件

    1.jquery.uploadify简介 在ASP.NET中上传的控件有很多,比如.NET自带的FileUpload,以及SWFUpload,Uploadify等等,尤其后面两个控件的用户体验比较好, ...

随机推荐

  1. Java使用BigDecimal精确计算的简单公式计算器

    由于工作需要,写了一个使用BigDecimal运算的精确计算的计算器(然后发现其实比不用BigDecimal的并好不到哪里去) 只能做加减乘除 double类型的数字在千万级别的时候会转成科学计数法, ...

  2. Python编程练习题

    1 求可用被17整除的所有三位数 for num in range(99,1000): if num % 17 == 0: print num ps:下面的写法和上面的写法性能的差距,上面好吧? fo ...

  3. java方法参数

    Java程序设计语言总是采用值调用.也就是说,方法得到的是所有参数的一个拷贝,特别是方法不能修改传递给它的任何参数变量的内容. 基本类型参数 1)X被初始化为percent值的一个拷贝: 2)X被乘以 ...

  4. Jquery报错:Uncaught TypeError: ((m.event.special[e.origType] || (intermediate value)).handle || e.handler).apply is not a function

    页面中出现了Jquery报错:Uncaught TypeError: ((m.event.special[e.origType] || (intermediate value)).handle || ...

  5. 【转】Spring jar包详解

    转载自:http://www.cnblogs.com/yanjunwu/archive/2013/04/06/3001927.html org.springframework.aop ——Spring ...

  6. ssh和putty

    SH(Secure Shell的缩写),由 IETF 的网络工作小组(Network Working Group)所制定:SSH 为建立在应用层和传输层基础上的安全协议.SSH 是目前较可靠,专为远程 ...

  7. redis初步入门

    http://blog.csdn.net/u014419512/article/details/25693425 版权声明:本文为博主原创文章,未经博主允许不得转载.   目录(?)[+] 环境 安装 ...

  8. 使用Settings.settings存储用户的个性化配置

    1.在vs中设计要存储的字段,如:zbl,注意范围选择用户 读取: var aa = Properties.Settings.Default.zbl; 写入: Properties.Settings. ...

  9. window.requestAnimationFrame

    今天小猪在看一个html5的demo时一直在找他的动画是怎么实现的,按照我的理解就应该是调用setInterval来循环调用动画函数来实现.但是在Demo中就是找不到这个函数.干着急的小猪只好一步一步 ...

  10. IOS基础库

    iOS 开发者中心                                             https://developer.apple.com/devcenter/ios/inde ...