1.配置Web.config;设定上传文件大小

<system.web>
<!--上传1000M限制(https://www.cnblogs.com/Joans/p/4315411.html)-->
<httpRuntime targetFramework="4.5.2" maxRequestLength="1024000000"/>
</system.web>
+
+
+(参考博客:(https://www.cnblogs.com/Joans/p/4315411.html))
+
+
<system.webServer>
<security>
<requestFiltering>
<!--上传1000M限制(https://www.cnblogs.com/Joans/p/4315411.html)-->
<requestLimits maxAllowedContentLength="1024000000" />
</requestFiltering>
</security>
</system.webServer>

2.前端(ajax*formdata)

<div>
<form method="post"enctype="multipart/form-data" data-ajax="false">
@*multiple="multiple"多选必备*@
<input type="file" name="Files" id="Files" multiple="multiple" value="上传Files" />
<br /><br />
@*type="button"以后用button*@
<input type="button" value="提交Files" onclick="uplod_Files()" />
</form>
</div>
<script>
function uplod_Files() {
var formData = new FormData();//就像cookie一样用,存入files[i];;数组形式
var files = document.getElementById("Files").files;
for (var i = 0; i < files.length ; i++)
{
formData.append("files_"+i, files[i]);
}
$.ajax({
url: "/ToPdf/Get_Files",//请求地址
dataType: "json",//数据格式
type: "POST",//请求方式
async: true,//是否异步请求
cache: false,//上传文件无需缓存
contentType: false,//必须
processData: false,//用于对data参数进行序列化处理 这里必须false
data: formData,
success: function (data) {
}
})
}
</script>

3.后台(Request.Files[i]

public void Get_Files()
{
try
{
var files = Request.Files;//得到前台ajax传过来的formData;;是个数组,基本单位是文件,可以不同类型
for (int i = 0; i < files.Count; i++)
{
var file = files[i];//数组;用indexof取
string file_path = Server.MapPath("Picture_File_Centre");//Picture_File_Centre人为设置存放路径
if (!Directory.Exists(file_path))
{
Directory.CreateDirectory(file_path);
}
var file_Path_Url = Path.Combine(file_path, Path.GetFileName(file.FileName));
file.SaveAs(file_Path_Url);//上传后保存文件
//优点;实现多类型多文件上传;;;只要是东西就可以上传,,后续有要求的可以自己在后台或前台做判断
//缺点:file_path内覆盖性写入,即上传文件与已有文件同名同类型时会覆写
}
}
catch (Exception)
{
throw;
}
}

多选文件批量上传前端(ajax*formdata)+后台(Request.Files[i])---input+ajax原生上传的更多相关文章

  1. jquery通过AJAX从后台获取信息并显示在表格上的类

    前一阵我写了:<jquery通过AJAX从后台获取信息并显示在表格上,并支持行选中.>现在,我把他们处理了一下,不需要每次写代码了: 具体代码如下: //获取数据并显示数据表格 funct ...

  2. jquery通过AJAX从后台获取信息并显示在表格上,并支持行选中

    不想用Easyui的样式,但是想要他的表格功能,本来一开始是要到网上找相关插件的,但是没找到就开始自己写,没想到这么简单. 后台代码:(这个不重要) public ActionResult GetDi ...

  3. ajax +formdata ,后台为PHP 实现上传整个文件夹(只适合谷歌浏览器)带进度条

    PHP用超级全局变量数组$_FILES来记录文件上传相关信息的. 1.file_uploads=on/off 是否允许通过http方式上传文件 2.max_execution_time=30 允许脚本 ...

  4. asp.net 页面上传文件控件后台代码Request.Files获取不到

    今天开发中遇到页面文件上传控件选择了文件,而后台Request.Files.Count取值为0,之前开发中遇到过几次,老是忘掉,今天记下来. html: <input type="fi ...

  5. csv文件批量导入数据到sqlite。

    csv文件批量导入数据到sqlite. 代码: f = web.input(bs_switch = {})  # bs_switch 为from表单file字段的namedata =[i.split( ...

  6. ajax请求后台有时走有时不走

    ajax请求后台有时走有时不走   ajax请求后台有时走有时不走,是因为没有将请求设置为同步方式,async:false,(默认为true即异步).如果不想使用缓存可以将cache:false,例如 ...

  7. SpringMVC+Ajax实现文件批量上传和下载功能实例代码

    需求: 文件批量上传,支持断点续传. 文件批量下载,支持断点续传. 使用JS能够实现批量下载,能够提供接口从指定url中下载文件并保存在本地指定路径中. 服务器不需要打包. 支持大文件断点下载.比如下 ...

  8. Spring Boot2(十四):单文件上传/下载,文件批量上传

    文件上传和下载在项目中经常用到,这里主要学习SpringBoot完成单个文件上传/下载,批量文件上传的场景应用.结合mysql数据库.jpa数据层操作.thymeleaf页面模板. 一.准备 添加ma ...

  9. 带进度条的文件批量上传插件uploadify

    有时项目中需要一个文件批量上传功能时,个人认为uploadify是快速简便的解决方案. 先上效果图: 一. 下载uploadify 从官网下载uploadify的Flash版本(Flash版本免费,另 ...

随机推荐

  1. Oracle系列七 子查询

    子查询语法 SELECT select_list FROM table WHERE expr operator (SELECT select_list FROM table); 子查询 (内查询) 在 ...

  2. WebGL学习笔记(五):变换库

    在WebGL开始绘制之前,我们需要通过自己对3D空间进行矩阵和向量的运算,使用网上已经成熟的转换库,可以避免自己去实现这些复杂的数学运算. 我们这里选择的是gl-matrix库,下载地址:https: ...

  3. Linux下 PostgrelSQL 基本操作

    一.在默认配置条件下,本机访问PostgreSQL 切换到Linux用户postgres,然后执行psql: $ su - postgres Last login: Wed Mar 1 13:16:4 ...

  4. [LeetCode] 34. Search for a Range 搜索一个范围(Find First and Last Position of Element in Sorted Array)

    原题目:Search for a Range, 现在题目改为: 34. Find First and Last Position of Element in Sorted Array Given an ...

  5. VisualStudio开发UE4工程设置

    转自:http://wangjie.rocks/2016/06/24/ue4-vs-setup/ 推荐插件 Visual Assist X C++ 代码高亮 UnrealVS Extension UE ...

  6. 【视频开发】【计算机视觉】doppia编译之二:boost安装

    编译安装boost库的方法大部分都是来自http://www.linuxidc.com/Linux/2013-07/87573.htm这篇文章,这里我用自己的语言重新组织,稍作修改和补充,最主要是方便 ...

  7. mysql执行计划详解,

    一.语法 explain SQL语句 例如: explain ; 二.explain输出解释 +----+-------------+-------+-------+----------------- ...

  8. csp联考T1

    本题主要难点在于如何处理dist^2的问题 40分算法 n^2暴力就不必多嘴,直接枚举根节点DFS就行了. 70分算法 对于b=0的情况,我们可以考虑用换根法来计算根节点的变化对总权值带来的影响. 换 ...

  9. MySql 、Oracle 获取表结构和字段信息

    1.MySql获取表结构信息 SELECT TABLE_NAME, TABLE_COMMENT FROM information_schema.`TABLES` WHERE TABLE_SCHEMA ...

  10. MySQL必知必会3

    创建和操纵表 创建表 输入 CREATE TABLE customers ( cust_id int NOT NULL AUTO_INCREMENT, cust_name char(50) NOT N ...