form enctype="multipart/form-data" ajax 文件上传
<form method="post" enctype="multipart/form-data" id="resource">
<table border="1" width="100%" >
<th colspan="3">资源上传</th>
<tr height="28px">
<td width="12%" align="right">文 件 名:</td>
<td width="68%" >
<input class="zxui-textbox" style="width:300px" id="title">
</td>
<td rowspan="3">
<div style="height: 380px">
<input type="file" name="files"><br>
</div>
</td>
</tr>
<tr height="28px">
<td width="12%" align="right">文件类型:</td>
<td width="68%" >
<select id="cc" class="zxui-combobox" name="dept" style="width:200px;">
<option value="0">书籍</option>
<option value="1">音频</option>
<option value="2">视频</option>
</select>
</td>
</tr>
<tr height="28px">
<td width="12%" align="right">备 注:</td>
<td width="68%" >
<input class="zxui-textbox" style="width:300px" id="remark">
</td>
</tr>
<tr height="28px">
<td width="100%" colspan="3" align="center">
<a id="fileUpload" onclick="subResource()" class="zxui-linkbutton" data-options="iconCls:'downloadIcon'">上传</a> </td>
</tr>
</table>
</form>
js:
function subResource(){
var remark=$('#remark').val();
var title=$('#title').val();
var files = $('#files').val(); //调用apicontroller后台action方法,将form数据传递给后台处理。contentType必须设置为false,否则chrome和firefox不兼容
if (files != ''& remark != '' & title != '') {
var formData = new FormData($("#resource")[0]);
formData.append("remark",remark);
formData.append("title",title); $.ajax({
url: "..../resources/upload.pt",
type: 'POST',
data: formData,
async: false,
cache: false,
contentType: false,
processData: false,
success: function (returnInfo) {
if (returnInfo==true) {
$.messager.alert('提示:','上传成功!');
$('#fileUpload').linkbutton('disable');
} else {
$.messager.alert('提示:','上传失败!请重新上传!');
}
},
error: function (returnInfo) {
//上传失败时显示上传失败信息
//document.getElementById('uploadInfo').innerHTML = "<span style='color:Red'>" + returnInfo + "</span>";
}
});
} else {
$.messager.alert('提示:','请完善上传资源或信息!');
}
}
后台:
@RequestMapping("upload")
@ResponseBody
public boolean upload(MultipartFile files,String remark,String title) throws Exception, IOException{
MultipartFile ufile=files;
String oname=ufile.getOriginalFilename();
String name=ufile.getName();
ServletContext context=this.getRequest().getSession().getServletContext();
String realname=context.getRealPath("/upload");
File nfile=new File(realname+"/"+UUID.randomUUID().toString()+oname);
ufile.transferTo(nfile); Dmp dmp =new BaseDmp();
String id = CodeUtil.getTimeSequence(30);
UserInfo user = this.getUserInfo();
String userid = user.getUserid();
String usname = user.getUsername();
dmp.put("id", id);
dmp.put("creater", usname);
dmp.put("createrid", userid);
dmp.put("address", String.valueOf(nfile));
dmp.put("remark", remark);
dmp.put("title", title);
int i =reService.in_resources(dmp);
boolean bo = false;
if (i>0) {
bo = true;
}
return bo;
}
form enctype="multipart/form-data" ajax 文件上传的更多相关文章
- 使用ajax提交form表单,包括ajax文件上传 转http://www.cnblogs.com/zhuxiaojie/p/4783939.html
使用ajax提交form表单,包括ajax文件上传 前言 使用ajax请求数据,很多人都会,比如说: $.post(path,{data:data},function(data){ ... },&qu ...
- 使用ajax提交form表单,包括ajax文件上传【转载】
[使用ajax提交form表单,包括ajax文件上传] 前言 转载:作者:https://www.cnblogs.com/zhuxiaojie/p/4783939.html 使用ajax请求数据,很多 ...
- 使用ajax提交form表单,包括ajax文件上传
前言 使用ajax请求数据,很多人都会,比如说: $.post(path,{data:data},function(data){ ... },"json"); 又或者是这样的aja ...
- Ajax(form表单文件上传、请求头之contentType、Ajax传递json数据、Ajax文件上传)
form表单文件上传 上菜 file_put.html <form action="" method="post" enctype="multi ...
- jquery.form.js官方插件介绍Form插件,支持Ajax,支持Ajax文件上传
jquery.form.js官方插件介绍Form插件,支持Ajax,支持Ajax文件上传 http://www.malsup.com/jquery/form/#getting-started [JQu ...
- AJAX文件上传实践与分析,带HTML5文件上传API。
对于HTML5已经支持AJAX文件上传了,但如果需要兼容的话还是得用一点小技巧的,HTML5等等介绍,先来看看以前我们是怎么写的. 网上可能会有一些叫AJAX文件上传插件,但在AJAX2.0之前是不可 ...
- 兼容ie的jquery ajax文件上传
Ajax文件上传插件很多,但兼容性各不一样,许多是对ie不兼容的,另外项目中是要求将网页内容嵌入到桌面端应用的,这样就不允许带flash的上传插件了,如:jquery uploadify...悲剧 对 ...
- 转: 如何实现jQuery的Ajax文件上传
[PHP文件上传] 在开始之前,我觉得是有必要把通WEB上传文件的原理简单说一下的.实际上,在这里不管是PHP,JSP,还是ASP处理上传的文件,其实都是WEB早已把文件上传到服务器了,我们只是运用上 ...
- springmvc+ajax文件上传
环境:JDK6以上,这里我是用JDK8,mysql57,maven项目 框架环境:spring+springmvc+mybaits或spring+springmvc+mybatis plus 前端代码 ...
- 表单文件上传,ajax文件上传
原创链接:http://www.cnblogs.com/yanqin/p/5345562.html html代码 index.jsp(表单文件上传) <form action="sh ...
随机推荐
- day01-项目开发流程
多用户即时通讯系统01 1.项目开发流程 2.需求分析 用户登录 拉取在线用户列表 无异常退出(包括客户端和服务端) 私聊 群聊 发文件 服务器推送新闻/广播 3.设计阶段 3.1界面设计 用户登录: ...
- 认识RocketMQ4.x架构设计
消息模型 单体的消息模型 RocketMQ消息模型跟其他的消息队列一样 都是 producer - > topic->consumer producer 生产消息 也就是发送者 topic ...
- Kubernetes 监控:Prometheus Adpater =》自定义指标扩缩容
使用 Kubernetes 进行容器编排的主要优点之一是,它可以非常轻松地对我们的应用程序进行水平扩展.Pod 水平自动缩放(HPA)可以根据 CPU 和内存使用量来扩展应用,前面讲解的 HPA 章节 ...
- k8s中计算资源策略 Limit Range
文章转载自:https://www.kuboard.cn/learning/k8s-advanced/policy/lr.html 默认情况下,容器在 Kubernetes 集群上运行时,不受 计算资 ...
- 使用logstash拉取MySQL数据存储到es中的再次操作
使用情况说明: 已经使用logstash拉取MySQL数据存储到es中,es中也创建了相应的索引,也存储了数据.假若把这个索引给删除了,再次进行同步操作的话要咋做,从最开始的数据进行同步,而不是新增的 ...
- 220722 T2 序列(ST表+分治)
题目描述 小 B 喜欢玩游戏. 有一天,小 B 在玩一个序列上的游戏,他得到了正整数序列{ai}以及一个常数c . 游戏规则是,玩家可以对于每一个ai 分别加上一个非负整数x ,代价为 x2,完成所有 ...
- POJ3311 Hie with the Pie(状压DP,Tsp)
本题是经典的Tsp问题的变形,Tsp问题就是要求从起点出发经过每个节点一次再回到起点的距离最小值,本题的区别就是可以经过一个节点不止一次,那么先预处理出任意两点之间的最短距离就行了,因为再多走只会浪费 ...
- virtualbox的Linux虚拟磁盘大小调整及注意事项
virtualBox 调整磁盘分区 起因 起初安装centos6.3 时,没有修改默认的硬盘空间.只有8G,导致后面安装完zookeeper,jdk之后,在安装mysql发现磁盘空间不足 扩容步骤 1 ...
- Java I/O(1):模型与流
在1990年以前,有一帮工程师们认为未来(1990年以后)会有很多小型设备需要得到电脑操控(不得不说,想法非常超前),鉴于当时市面上并没有任何一款编程语言能够跨平台,而且能够在诸如烤面包机这种小型设备 ...
- C语言之走迷宫深度和广度优先(利用堆栈和队列)
完成以下迷宫 利用二维数组储存每一个数组里的值,若是不能走则为1,若是可行就是0,走过了就设为2. 一般是再复制一个数组,用来记录. 堆栈的思想就是将一个点的上下左右都遍历一遍,若可行进栈,跳出遍历, ...