ajaxFileUpload 异步上传文件简单使用

从零到一:手把手教你用DJI E-Port套件为M350 RTK开发第三方负载(PSDK V3实战) 本文详细介绍了如何使用DJI E-Port套件为M350 RTK开发第三方负载,涵盖硬件配置、开发环境搭建及实战应用。通过PSDK V3开发套件,开发者可以高效实现负载与无人机的通信,适用于电力巡检等工业场景,提升开发效率与系统稳定性。 阅读详情

ajaxFileUpload 异步上传文件简单使用

原创  2014年07月18日 17:36:26
[html]  view plain  copy
  1.   
[html]  view plain  copy
  1. <%@ page language="java" contentType="text/html; charset=UTF-8"  
  2.     pageEncoding="UTF-8"%>  
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  
  4. <html>  
  5. <head>  
  6. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">  
  7. <title>Insert title here</title>  
  8.   
  9. <!-- 引用jquery -->  
  10. <script src="//code.jquery.com/jquery-1.11.0.min.js"></script>  
  11. <script src="//code.jquery.com/jquery-migrate-1.2.1.min.js"></script>  
  12.   
  13. <!-- 引用ajaxfileupload.js -->  
  14. <script src="../js/ajaxfileupload.js"></script>  
  15.   
  16. <script type="text/javascript">  
  17. $(function(){  
  18.     //点击打开文件选择器  
  19.     $("#upload").on('click', function() {  
  20.         $('#fileToUpload').click();  
  21.     });  
  22.       
  23.     //选择文件之后执行上传  
  24.     $('#fileToUpload').on('change', function() {  
  25.         $.ajaxFileUpload({  
  26.             url:'../FileUploadServlet',  
  27.             secureuri:false,  
  28.             fileElementId:'fileToUpload',//file标签的id  
  29.             dataType: 'json',//返回数据的类型  
  30.             data:{name:'logan'},//一同上传的数据  
  31.             success: function (data, status) {  
  32.                 //把图片替换  
  33.                 var obj = jQuery.parseJSON(data);  
  34.                 $("#upload").attr("src", "../image/"+obj.fileName);  
  35.       
  36.                 if(typeof(data.error) != 'undefined') {  
  37.                     if(data.error != '') {  
  38.                         alert(data.error);  
  39.                     } else {  
  40.                         alert(data.msg);  
  41.                     }  
  42.                 }  
  43.             },  
  44.             error: function (data, status, e) {  
  45.                 alert(e);  
  46.             }  
  47.         });  
  48.     });  
  49.       
  50. });  
  51. </script>  
  52.   
  53. </head>  
  54. <body>  
  55.   
  56. <!-- 点击图片,打开文件选择器,确定,上传。(这是网络上的一个图片) -->  
  57. <img id="upload" alt="" style="width: 200px; height: 200px"  
  58.     src="http://d.pcs.baidu.com/thumbnail/e8119cd92364a9b2714ea0a92af15aec?fid=2399642819-250528-305026848845811&time=1405674000&sign=FDTAER-DCb740ccc5511e5e8fedcff06b081203-abo3xnZkLb7yMEPLDWiuaQI8kXM%3D&rt=sh&expires=2h&r=900585425&sharesign=unknown&size=c710_u500&quality=100">  
  59.   
  60. <!-- 隐藏file标签 -->  
  61. <input id="fileToUpload" style="display: none" type="file" name="upfile"><br/>  
  62.     
  63. </body>  
  64. </html>  


[java]  view plain  copy
  1. package com.yangshidesign.weixinface.servlet;  
  2.   
  3. import java.io.File;  
  4. import java.io.IOException;  
  5. import java.util.List;  
  6.   
  7. import javax.servlet.ServletContext;  
  8. import javax.servlet.ServletException;  
  9. import javax.servlet.annotation.WebServlet;  
  10. import javax.servlet.http.HttpServlet;  
  11. import javax.servlet.http.HttpServletRequest;  
  12. import javax.servlet.http.HttpServletResponse;  
  13.   
  14. import org.apache.commons.fileupload.FileItem;  
  15. import org.apache.commons.fileupload.FileUploadException;  
  16. import org.apache.commons.fileupload.disk.DiskFileItemFactory;  
  17. import org.apache.commons.fileupload.servlet.ServletFileUpload;  
  18.   
  19. import com.alibaba.fastjson.JSONObject;  
  20.   
  21. /** 
  22.  * Servlet implementation class FileUploadServlet 
  23.  */  
  24. @WebServlet("/FileUploadServlet")  
  25. public class FileUploadServlet extends HttpServlet {  
  26.     private static final long serialVersionUID = 1L;  
  27.   
  28.     protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {  
  29.         response.getWriter().println("ppppppppppppppppppp");  
  30.     }  
  31.   
  32.     protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {  
  33.         //需要返回的fileName  
  34.         String fileName = null;  
  35.           
  36.         //参考资料  http://commons.apache.org/proper/commons-fileupload/using.html  
  37.         // Check that we have a file upload request  
  38.         boolean isMultipart = ServletFileUpload.isMultipartContent(request);  
  39.           
  40.         // Create a factory for disk-based file items  
  41.         DiskFileItemFactory factory = new DiskFileItemFactory();  
  42.   
  43.         // Configure a repository (to ensure a secure temp location is used)  
  44.         ServletContext servletContext = this.getServletConfig().getServletContext();  
  45.         File repository = (File) servletContext.getAttribute("javax.servlet.context.tempdir");  
  46.         factory.setRepository(repository);  
  47.   
  48.         // Create a new file upload handler  
  49.         ServletFileUpload upload = new ServletFileUpload(factory);  
  50.   
  51.         // Parse the request  
  52.         try {  
  53.             List<FileItem> items = upload.parseRequest(request);  
  54.             for(FileItem item : items) {  
  55.                 //其他参数  
  56.                 String type = item.getContentType();  
  57.                 if(type == null) {  
  58. //                  System.out.println(item.getString(item.getFieldName()));  
  59.                     continue;  
  60.                 }  
  61.                   
  62.                 //文件参数  
  63.                 fileName = item.getName();  
  64.                   
  65.                 //设置保存文件路径  
  66.                 String realPath = request.getServletContext().getRealPath("/image");  
  67.                 File dir = new File(realPath);  
  68.                 File f = new File(dir, fileName);  
  69.                   
  70.                 if(f.exists()) {  
  71.                     f.delete();  
  72.                 }  
  73.                 f.createNewFile();  
  74.                   
  75.                 //保存  
  76.                 item.write(f);  
  77.                   
  78.             }  
  79.         } catch (FileUploadException e) {  
  80.             e.printStackTrace();  
  81.         } catch (Exception e) {  
  82.             e.printStackTrace();  
  83.         }  
  84.           
  85.         //返回结果  
  86.         JSONObject obj = new JSONObject();  
  87.         obj.put("fileName", fileName);  
  88.         response.getWriter().print(obj.toJSONString());  
  89.     }  
  90.   
  91. }  

需要用到的一个js文件:(点击下载)

ajaxfileupload.js

两个jar包:

commons-io-2.4.jar

commons-fileupload-1.3.1.jar


注意:上传成功之后没有执行回调函数。

解决方法:(参考链接:http://www.myexception.cn/ajax/727453.html)

打开ajaxfileupload.js拉到底下找到

[javascript]  view plain  copy
  1. if ( type == "json" ) {  
  2.             eval( "data = " + data );  
  3.         }     

改成:

[javascript]  view plain  copy
  1. if ( type == "json" ) {  
  2.             data = data.replace("<pre>","").replace("</pre>","");  
  3.             //data = eval("("+data.replace("<pre>","").replace("</pre>","")+")");  
  4.         }     


版权声明:本文为博主原创文章,转载请注明原地址。
 
ma15732625261
  • ma15732625261
    2017-03-18 21:2713楼
  • ajaxFileUpload 异步上传文件简单使用,兼容性不太好
kookkj
laizhiming1989
a708856902
  • a708856902
    2016-01-13 14:5710楼
  • 抄东西都抄不全,真是醉了,你确定最后你的替换内容有效?白让我找了半天
  • 回复 
qiantujava
qq_32901793
  • qq_32901793
    2015-11-18 10:169楼
  • 能发我一份吗854580614@qq.com
lammps案例:Cu三点弯曲模拟 大家好,我是小马老师。 本文分享一个Cu弯曲的案例。 本案例参考三点弯曲实验,三点弯曲试验是将试样放在弯曲装置上,在试样上加载进行弯曲试验,直到达到规定的弯曲程度或发生断裂。 模拟原理是在z方向固定两侧端点,在x和y方向不固定,模拟左右两个支撑点,中间压块向下运动实现弯曲。 初始结构: 运行结果为: 模拟的重点是使用fix setforce命令压住左右两端,使其不能沿z轴上下移动,但是又不能在xy方向限制其移动。 压块的运动方式比较简单,给其一个下压的速度即可。 为防止压块变形,使用setforce命 阅读详情

相关推荐

【论文分享】【Agent】ProAgent: Building Proactive Cooperative Agents with Large Language Models

多智能体系统是由多个智能体组成的集合,这些智能体可以是软件程序、机器人、传感器或其他实体,它们各自具备一定的智能和自主性,并通过交互协作来实现单个智能体难以完成的复杂目标。

nanxun___的博客 1123

Ajax上传文件&FromData与服务器使用DiskFileItemFactory&ServletFileUpload&FileItem接收文件

html代码 <form id="form" method="post" > 图片名称:<input id="id" name="id"> <input type="file" name="img" accept="image/gif/png/jpg/" > </form> <button id="bt">提交</b...

qq_44784185的博客 404

手把手教你用Python模拟侧信道攻击:从电磁辐射到数据窃取(附防御代码)

本文详细介绍了如何使用Python模拟侧信道攻击,从电磁辐射信号采集到数据窃取的全过程,并提供了实用的防御代码。通过实战案例,帮助安全研究员和开发者理解侧信道攻击原理,掌握信号处理与图像重建技术,同时学习有效的噪声干扰和电磁屏蔽防御措施。

weixin_28716443的博客 162

js ajax上传file文件上传,使用ajaxfileupload.js实现上传文件功能

使用ajaxfileupload.js实现上传文件功能2019-01-01编程之家https://www.jb51.cc编程之家收集整理的这篇文章主要介绍了使用ajaxfileupload.js实现上传文件功能,编程之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。一直以来上传文件都是使用form表单上传文件,也看到过有人使用js上传文件,不过看起来蛮简单的也就没有怎么去理会。今天突然要使用...

weixin_42112894的博客 2079

workbench拓扑优化教程_拓扑优化实例-轮毂的优化

拓扑优化实例-轮毂的优化ANSYS Workbench的新版本集成了topology optimization模块,为用户的拓扑优化提供的很好的应用。通过拓扑优化topology optimization模块的使用可以对拓扑有较好的理解,该模块拓扑优化可以简单概括为一句话:如何在合适的位置去除确定的材料使用量,而相应的刚度变化影响最小。本例以汽车轮毂为例,来确定轮毂的辐条形状。1.建立模型DM中可...

weixin_39581739的博客 3043

硬件手册——PT100精密测温电路

PT100精密测温电路 一、需求分析 根据题目要求为:测温范围为0-100℃、测温精度要求为±1℃。由于铂电阻具有精度高、性能可靠、稳定性好的特点,且铂电阻的电阻相对变化率与温度的关系曲线线性度最好,故选择铂电阻作为敏感元件。而在国标中,铂电阻有几种不同的标准,如PT100、PT1000。分别对应着0摄氏度下铂电阻的阻值为100R和1000R,由于需要考虑铂电阻的自发热问题,所以尽量选择阻值小的铂电阻,故选择PT100为最终型号。 二、电路设计 2.1 热电阻接法 热电阻测温电路有多种接法,其中三线制会导致

weixin_41655430的博客 5万+

AjaxFileUpload实现文件上传

Ajax实现文件上传需要两个jar包:commons-fileupload-1.3.1.jar,commons-io-2.4.jar 和两个js文件ajaxfileupload.js,jquery.js 实例:     ajaxFileUpload.jsp           function ajaxFileUpload() {           $.ajaxFileUplo

张普的专栏 957

不到200块!手把手教你用ZYNQ7010和AD9363攒一台自己的开源SDR硬件(附BOM清单)

本文详细介绍了如何用不到200元的预算,基于ZYNQ7010 FPGA和AD9363射频芯片打造一台功能完备的开源SDR硬件平台。从核心组件选型、PCB设计到焊接调试,提供全流程实战指南,特别适合预算有限的硬件爱好者和创客群体探索无线通信世界。

weixin_26854829的博客 479

利用DiskFileItemFactory实现文件上传

在JSP页面中,form表单中method必须设置为post,并且要设置enctype=”multipart/form-data”:<%@ page contentType="text/html;charset=UTF-8" %> <HTML> <HEAD> <title>上传文件</title> </HEAD> <body> <div> <form act

u014785687的博客 3万+

为什么BGA焊点总在四个角先坏?一次热-振耦合仿真给你讲明白

本文通过Ansys Workbench进行热-振耦合仿真,深入分析了BGA焊点在四个角点先失效的机理。研究发现,角点焊点由于CTE失配、振动载荷放大及几何应力集中等因素,承受的等效塑性应变和动态应力显著高于中心区域,导致其疲劳寿命大幅降低。仿真数据揭示了角点焊点的应力分布和蠕变特性,为电子封装可靠性设计提供了重要依据。

weixin_42535461的博客 439

多智能体协作的本质是中介者模式,不是多开Agent

多智能体系统并非简单启动多个Agent实例,而是一种受控的、可验证的动态交互过程。其核心原理在于解耦Agent间直接依赖,通过中央中介者统一管理任务分发、协议转换、状态协调与故障兜底。这种架构显著提升系统的可观测性、容错性与可维护性,技术价值体现在强一致性保障(如金融订单原子操作)与灵活自治平衡(如边缘设备轻量协同)。典型应用场景包括电商客服协同、工业巡检调度、飞书/微信多渠道智能服务等。OpenClaw与Hermes Agent正是这一范式的工程落地代表,分别体现强中介与弱中介两种演进路径。

weixin_34151004的博客 359

ajaxFileUpload 异步上传文件配合Struts2的简单使用

我在用SSH框架写一个简单的企业网站的时候需要对产品的图片进行异步上传,经过研究成功实现了ajaxFileUpload+Struts2的异步上传功能,所以抽空做下总结,本文主要讲解ajaxFileUpload 异步上传文件配合Struts2的简单使用 jQuery插件ajaxFileUpload可以实现ajax文件上传,使用非常简单。 准备环境 所需环境: jquery.js aja

C. 5944

用AList挂载网盘,无损看VR电影教程,无需下载到PICO头显本地!

用AList挂载网盘 + WebDAV直连头显,看片像拉本地一样流畅,不怕卡顿、不怕没空间,简直是VR看片刚需配置!别再用U盘传电影了,用AList + WebDAV,直接流畅看4K,看片效率翻倍,体验提升一个档次!

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 5545

jQuery插件AjaxFileUpload实现ajax文件上传

jQuery插件AjaxFileUpload用来实现ajax文件上传,该插件使用非常简单,接下来写个demo演示怎么用AjaxFileUpload插件实现文件上传。 1、引入AjaxFileUpload插件相关的js resources/js/jquery-1.2.1.js"> resources/js/ajaxfileupload.js"> 备注:测试发现,ajaxfile

jinyeweiyang的专栏 686

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

利用ajaxFileUpload实现像qq邮箱一样异步上传文件

利用ajaxFileUpload实现像qq邮箱一样异步上传文件 首先是jsp页面代码,非常简单。 <a href="javascript:;" class="file">选择文件 <input type="file" name="upFile" id="upFile" > </...

heavycjh的博客 135

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

php jquery 文件上传,jQuery Ajax文件上传(php)

如何实现jQuery的Ajax文件上传,PHP如实文件上传.AJAX上传文件,PHP上传文件。【PHP文件上传】在开始之前,我觉得是有必要把通WEB上传文件的原理简单说一下的。实际上,在这里不管是PHP,JSP,还是ASP处理上传的文件,其实都是WEB早已把文件上传到服务器了,我们只是运用上传处理函数来处理上传的文件。而处理函数一般都是用PHP,JSP,ASP等服务端语言来实现的。那么如何通过WE...

weixin_33595935的博客 202

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

利用JQuery的ajax请求实现文件上传

今天给大家介绍一下如何利用JQuery的ajax请求实现文件上传功能。主要需要引入一个js文件,然后调用js文件中的ajaxFileUpload请求就可以实现异步文件上传机制了。第一步:引入js文件名称为:ajaxfileupload.js 下载地址:点击打开链接第二步:编写&lt;input type="file" name="file" id="file"/&gt;点击上传文件。第三步:编写a...

林老师带你学编程 1万+

上传文件

一、用传统的方式来上传文件 1)前台定义个file <form action="fileUpload.action" method="post" enctype="multipart/form-data">     其中enctype要指定。 2)后台配置action,然后通过后台通过name="file"来接收该文件,注意后台接收的file为一个临时文件。接收到该文件就可

wittdong的博客 373

JQuery文件上传插件ajaxFileUpload在Asp.net MVC中的使用[转载]

转载:https://www.cnblogs.com/fonour/p/ajaxFileUpload.html 0 ajaxFileUpload简介 ajaxFileUpload插件是一个非常简单的基于Jquery的异步上传文件的插件,使用过程中发现很多与这个同名的,基于原始版本基础之上修改过的插件,文件版本比较多,我把我自己使用的ajaxFileUpload文件上传到博客园上了,想要使用...

weixin_34081595的博客 114

C# MVC ajaxFileUpload 导入Excel文件以及遇到的问题

0 ajaxFileUpload简介 ajaxFileUpload插件是一个非常简单的基于Jquery的异步上传文件的插件,使用过程中发现很多与这个同名的,基于原始版本基础之上修改过的插件,文件版本比较多,我把我自己使用的ajaxFileUpload文件上传到博客园上了,想要使用的朋友可以下载:http://files.cnblogs.com/files/fonour/ajaxfile...

weixin_30496751的博客 150

ajax+spring文件上传

1、applicationContext.xml配置

Abel.lin的专栏 1255
上一篇: HTML DOM FileUpload 对象
下一篇: 什么是multipart/form-data请求
javaPie
博客等级 码龄16年 1171粉丝 43原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值