//-----前端文件-------

form id="uploadForm" enctype="multipart/form-data">
<input id="files" type="file" multiple="multiple" onchange="onChange();"/>
<div id="div1" style="width:100px;height:auto"></div>
<div id="flshID"></div>
<button id="upload" type="button">上传</button>
<button id="swfupload" type="button" onclick="swfUp();">swf上传</button>
<div id="picloding"></div>
<div id="addimgs"></div>

</form>

//----------------js------------------------------------

$(function () {
$("#upload").click(function () {
var formdata = new FormData();
var wenjian = $("#files")[0].files// document.getElementById("files").files;这里$("#files")[0]是jquery对象装换成dom对象
if (wenjian.length <= 0) {
alert("请选择文件");
retun;
}

for (i = 0; i < wenjian.length; i++) {
formdata.append(wenjian[i].name, wenjian[i]);
}

$.ajax({
type: "POST",
url: "/My/UploadFiles",
data: formdata,
datatype: "json",
contentType: false,//必须false才会自动加上正确的Content-Type
processData: false,//必须false才会避开jQuery对 formdata 的默认处理 ,XMLHttpRequest会对 formdata 进行正确的处理

success: function (result) {
alert(result.msg);
},
error: function () {
alert("Error");
}

});
});
});

//后端 controller

public JsonResult UploadFiles()
{
var files = Request.Files;
for (int i = 0; i < files.Count; i++)
{
string key=files.Keys[i];
var file=files[key];
string fileName = file.FileName;
var filesUrl = Server.MapPath("~/Upload");
if (Directory.Exists(filesUrl) == false)//路径不存在则创建
{ Directory.CreateDirectory(filesUrl); }
var path = Path.Combine(filesUrl, fileName);
if (System.IO.File.Exists(path))
{
return Json(new {msg="已存在同名文件" });
}
file.SaveAs(path);

}

return Json(new { msg = "上传成功" });
}

上传文件 input file的更多相关文章

  1. 通过Ajax方式上传文件(input file),使用FormData进行Ajax请求

    <script type="text/jscript"> $(function () { $("#btn_uploadimg").click(fun ...

  2. jquery即时获取上传文件input file文件名

    截图:   代码: <input type="file" id="choosefile" style="display:none"/& ...

  3. python+selenium:解决上传文件<input type='file'>标签属性被css的visibility隐藏导致无法定位元素的问题

    要想上传文件,需要找到在HTML中<input type="file" />这个标签,有它就可以利用send_keys上传文件,不过这里的<input>元素 ...

  4. JS分段上传文件(File)并使用MD5.js加密文件段用来后台校验

    HTML <form method="POST" name="form1" action="/mupload/upload/" enc ...

  5. python+selenium上传文件——input标签

    我们要区分出上传按钮的种类,大体上可以分为两种: 第一种普通上传:将本地文件路径作为一个值,放在input标签中,通过form表单将这个值提交给服务器: 第二种插件上传:是通过Flash.JavaSc ...

  6. 移动端头像上传AJax input file

    jQuery中的Ajax不能支持 input file 需要用ajaxupload.js但是先需要引入jQuery文件 <script src="__PUBLIC__/js/ajaxf ...

  7. 文件上传:input file FileReader

    js: window.onload = function () { var input = document.getElementById('input-file'), info = document ...

  8. android 模拟器上传文件 Read-only file system

    在cmd窗口一条命令就可以了:adb shellmount -o remount rw /

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

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

随机推荐

  1. ncat的使用

    由于netcat的缺陷,所以有了升级版ncat,弥补了netcat的一些不足. ncat是nmap工具包的一个工具. 服务器端 ncat -c bash --allow 192.168.1.119 - ...

  2. VM虚拟机的配置文件(.vmx)损坏

    为了禁用时间同步,使用sublime修改vmx文件 文件第一行为.encoding = "GBK" 修改完毕,无法打开虚拟机,报 VM虚拟机的配置文件(.vmx)损坏错误 因为su ...

  3. NumPy 从数值范围创建数组

    NumPy 从数值范围创建数组 这一章节我们将学习如何从数值范围创建数组. numpy.arange numpy 包中的使用 arange 函数创建数值范围并返回 ndarray 对象,函数格式如下: ...

  4. pandas中series和dataframe之间的区别

    series结构有索引,和列名组成,如果没有,那么程序会自动赋名为None series的索引名具有唯一性,索引可以数字和字符,系统会自动将他们转化为一个类型object. dataframe由索引和 ...

  5. turret

    turret - 必应词典 美['tʌrət]英['tʌrɪt] n.角楼:(战舰.飞机或坦克的)炮塔 网络塔楼:转塔:转台

  6. 8.16 val()和html()的问题

    今天在做关闭模态框重置表单时,关闭模态框后输入框里的值还是在,不知道怎么回事? 感谢wd啦,原来我在初始化这个输入框的时候就写错了,输入框写值的时候用的是val(),而我和上面的div一样,用的是ht ...

  7. day 13 模块

    模块 一个py文件,就是一个模块,一个模块是一些相似功能的集合体. # echo.py 定义一个模块. 下文都用这个 print('from echo 模块') name = 'echo' def f ...

  8. webpack(二) 根据模板生成简单的html文件

    (一)使用webpack 根据模板生成HTML,首先需要安装插件 html-webpack-plugin. 在工程文件夹安装插件 命令如下: npm install html-webpack-plug ...

  9. webpack浅析---入口篇

    webpack有四个核心概念: 入口(entry) 输出(output) loader 插件(plugins) webpack-merge将环境.构建目标.运行时合并 入口: 入口起点是指webpac ...

  10. DNS的过程

    来自:https://www.zhihu.com/question/23042131 作者:郭无心链接:https://www.zhihu.com/question/23042131/answer/6 ...