tnblog
首页
视频
资源
登录

文件上传具体操作(txt,ppt,png,jpg,exe,xls,xlsx,pptx,*.mp3/*.wav/*.mid/*.asf/*.mpg/*.avi/*.tti,avi、 rm 、 等)

4976人阅读 2020/5/23 15:28 总访问:185231 评论:6 收藏:0 手机
分类: .Net

```handlebars

  1. html代码:
  2.  <link href="~/Content/layui/css/layui.css" rel="stylesheet" />
  3. <fieldset class="layui-elem-field layui-field-title" style="margin-top: 30px;">
  4.     <legend>文件上传多样化</legend>
  5. </fieldset>
  6. <input type="file" id="file" name="myfile" style="display: none" />
  7. <input type="text" id="filename" style="display:none" class="layui-text">
  8. <input type="button" class="layui-btn layui-btn-normal" onclick="upload()" value="选择文件上传" />
  9. <br />

```

js: 


```csharp

  1. <script src="~/Content/js/jquery-1.9.1.js"></script>

```


```markup

  1. <script>  
  2.     //文件上传
  3.     function UpladFile(fileObj{
  4.         var form = new FormData(); // FormData 对象
  5.         form.append("file", fileObj); // 文件对象
  6.         $.ajax({
  7.             url'/Excle/fileUpload',      //url地址
  8.             type: 'POST',                 //上传方式
  9.             data: form,                   // 上传formdata封装的数据
  10.             dataType: 'JSON'
  11.             cachefalse,                  // 不缓存
  12.             processData: false,        // jQuery不要去处理发送的数据
  13.             contentType: false,
  14.             beforeSendfunction (info{
  15.                 console.log(info);
  16.             console.log("正在进行,请稍候");
  17.      },        // jQuery不要去设置Content-Type请求头
  18.             success: function (data{           //成功回调
  19.                 console.log(data);
  20.             },
  21.             errorfunction (data{           //失败回调
  22.                 console.log(data);
  23.             }
  24.         });
  25.     }
  26.     //调用上传单击事件
  27.     function upload({
  28.         $("#file").click();
  29.         $('#file').change(function (e{
  30.             console.log(e);
  31.             var fileName = e.target.files[0];//js 获取文件对象
  32.             if (fileName !== undefined) {
  33.                 var file_typename = fileName.name.substring(fileName.name.lastIndexOf('.'));
  34.                  UpladFile(fileName);
  35.                 //if (file_typename === '.xlsx' || file_typename === '.xls') {
  36.                 //    $("#filename").css("display", "block");
  37.                 //    $("#filename").val(fileName.name);
  38.                 //    UpladFile(fileName);
  39.                 //} else {
  40.                 //    console.log("请选择正确的文件类型!");
  41.                 //}
  42.             } else {
  43.                 console.log("请选择正确的文件!")
  44.             }
  45.         });
  46.     }
  47. </script>
  48. ```


后台代码:


```csharp

  1.  public ActionResult fileUpload()
  2.         {
  3.             if (Request.Files.Count > 0
  4.             { 
  5.                 //取出第一个文件
  6.                 var file = Request.Files[0]; 
  7.                 //取出用户上传的文件名
  8.                 String filename = file.FileName;
  9.                 if (!String.IsNullOrWhiteSpace(filename))
  10.                 {
  11.                     string suf = filename.Substring(filename.LastIndexOf('.'));
  12.                     string newfilename = DateTime.Now.ToString("yyyy年MM月dd日HH时mm分s秒") + suf;
  13.                     String url = Server.MapPath("~/Excle/" + newfilename);
  14.                     file.SaveAs(url);
  15.                     string result = newfilename;
  16.                     return Json(new { code = 200, excle_fileName = result });
  17.                 }
  18.             }
  19.             return Json(new { code = 500 });
  20.         } 
  21.  
  22.     }
  23. }

```


输出效果:



上传文件:


选个excle 的吧:


成功返回结果:

打开所指定的文件夹看:


可以看到,最后一个文件和成功后的输出结果是一致的,


这就成功了 。


不懂的可以咨询我。


评价

Service-stack.redis配置连接池与读写分离(处理并发相关)

配置连接池与读写分类 //写节点(主节点) List&lt;string&gt;writes=newList&lt;string&gt;(); writes.Add(&quot;123456a...

python安装pip以及使用pip安装requests模块

pip很简单的介绍pip 是一个现代的,通用的 Python 包管理工具。提供了对 Python 包的查找、下载、安装、卸载的功能。如果想...

.net core使用requestresponse下载文件下载excel

使用request获取内容net core中request没有直接的索引方法,需要点里边的Query,或者formstringbase64=Request.Form[&quot;f...

原生js获取单选框复选框信息

原生js获取单选框复选框等信息vardoreg=function(){ //根据name获取用户名 varusername=document.getElementsByName(&q...

docker常用命令删除镜像命令进入容器、docker重启命令

1. docker version查看 Docker 版本信息2. docker info显示 Docker 系统信息,包括镜像,容器数等3. 运行容器第一次使用:d...

bootstrap动态生成的单选框复选框无法点击选中的问题

bootstrap的单选框、复选框是要经过渲染的,然后才显示出来的经过渲染的是这样的没有经过渲染的就是最原始的样子所以它的选...

Vue.js常用指令,事件绑定,Vue过滤器解析状态过滤器多个参数。vue表格状态解析。vue解析类型,element ui解析类型,状态,el-tag

按照html的编码显示:v-html&lt;div class=&quot;font_info&quot; v-html=&quot;item.Content&quot;&gt;{{item.Content}}&l...

待所有线程执行完后,在执行某个方法

彼年豆蔻,谁许谁地老天荒。在多线程环境下,我们可能会需要等待开辟的线程执行完后,再去执行某个方法,例如输出并行计算...

c 时间操作,时间搓

格式化成:年月日时分秒stringtimestamp=DateTime.Now.ToString(&quot;yyyyMMddHHmmss&quot;);带点连接符DateTime.Now.ToSt...

net core获取请求方式,IPUserAgent请求地址

直接贴代码//获取ip地址 stringipaddress=context.HttpContext.Connection.RemoteIpAddress.ToString(); vl.Ip=ipaddress...

使用jquery操作元素的css样式(获取、修改

使用jquery操作元素的css样式(获取、修改等等) //1、获取和设置样式 $(&quot;#tow&quot;).attr(&quot;class&quot;)...

使用ffmpeg进行视频与音频格式转换。avi转mp4flac转mp3m4a转mp3

ffmpeg简介:FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它...

C委托与lamdba表达式入门以及Lamdba自己实现SelectMany

?委托:l 什么委托: 本质是方法指针l 委托的作用: 作用:进行方法传递,方法可以当作一个参数进行传递,C#里边要传递...

mui学习二: 调试状态看console.log

看console.log上面点击一下即可也可以在浏览器上看把连接复制上去即可这样就可以了

.net webapi Newtonsoft.Json返回需要的字段,忽略某些字段,修改字段名,动态返回需要的字段

有时候我们在写webapi的时候,不想把正常用的对象所有字段都返回,我们需要进行一些筛选,忽略某些字段,大概说一下几种方法...
人若没梦想,那跟咸鱼有啥样
排名
20
文章
32
粉丝
7
评论
21
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术
生命在于折腾,长寿源于静止。