<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 文件上传的更多相关文章

  1. 使用ajax提交form表单,包括ajax文件上传 转http://www.cnblogs.com/zhuxiaojie/p/4783939.html

    使用ajax提交form表单,包括ajax文件上传 前言 使用ajax请求数据,很多人都会,比如说: $.post(path,{data:data},function(data){ ... },&qu ...

  2. 使用ajax提交form表单,包括ajax文件上传【转载】

    [使用ajax提交form表单,包括ajax文件上传] 前言 转载:作者:https://www.cnblogs.com/zhuxiaojie/p/4783939.html 使用ajax请求数据,很多 ...

  3. 使用ajax提交form表单,包括ajax文件上传

    前言 使用ajax请求数据,很多人都会,比如说: $.post(path,{data:data},function(data){ ... },"json"); 又或者是这样的aja ...

  4. Ajax(form表单文件上传、请求头之contentType、Ajax传递json数据、Ajax文件上传)

    form表单文件上传 上菜 file_put.html <form action="" method="post" enctype="multi ...

  5. jquery.form.js官方插件介绍Form插件,支持Ajax,支持Ajax文件上传

    jquery.form.js官方插件介绍Form插件,支持Ajax,支持Ajax文件上传 http://www.malsup.com/jquery/form/#getting-started [JQu ...

  6. AJAX文件上传实践与分析,带HTML5文件上传API。

    对于HTML5已经支持AJAX文件上传了,但如果需要兼容的话还是得用一点小技巧的,HTML5等等介绍,先来看看以前我们是怎么写的. 网上可能会有一些叫AJAX文件上传插件,但在AJAX2.0之前是不可 ...

  7. 兼容ie的jquery ajax文件上传

    Ajax文件上传插件很多,但兼容性各不一样,许多是对ie不兼容的,另外项目中是要求将网页内容嵌入到桌面端应用的,这样就不允许带flash的上传插件了,如:jquery uploadify...悲剧 对 ...

  8. 转: 如何实现jQuery的Ajax文件上传

    [PHP文件上传] 在开始之前,我觉得是有必要把通WEB上传文件的原理简单说一下的.实际上,在这里不管是PHP,JSP,还是ASP处理上传的文件,其实都是WEB早已把文件上传到服务器了,我们只是运用上 ...

  9. springmvc+ajax文件上传

    环境:JDK6以上,这里我是用JDK8,mysql57,maven项目 框架环境:spring+springmvc+mybaits或spring+springmvc+mybatis plus 前端代码 ...

  10. 表单文件上传,ajax文件上传

    原创链接:http://www.cnblogs.com/yanqin/p/5345562.html html代码  index.jsp(表单文件上传) <form action="sh ...

随机推荐

  1. 【loj2538】 【PKUWC 2018】Slay the Spire dp

    我们不难发现,假设抽了x张攻击牌,y张强化牌,那么肯定是打出尽可能多张的强化牌后,再开始出攻击牌(当然最少要一张攻击牌) 我们设G(i,j)表示:所有(抽到的攻击牌牌数为i,打出的攻击牌牌数为j)的方 ...

  2. 【Java UI】HarmonyOS添加日历事件

    ​参考资料 CalendarDataHelper Events Reminders api讲解 添加权限 在config.json添加权限代码如下 "reqPermissions" ...

  3. IEEE浮点数向偶数舍

    CSAPP ​ 向偶数舍入初看上去好像是个相当随意的目标--有什么理由偏向取偶数呢?为什么不始终把位于两个可表示的值中间的值都向上舍入呢?使用这种方法的一个问题就是很容易假想到这样的情景:这种方法舍入 ...

  4. Kibana:Canvas入门

  5. Redis 监控指标

    监控指标 性能指标:Performance 内存指标: Memory 基本活动指标:Basic activity 持久性指标: Persistence 错误指标:Error 性能指标:Performa ...

  6. Pod的滚动升级过程

  7. Redis一键安装脚本

    #! /usr/bin/env bash # redis 6.0.3 源码安装 # 用法: bash -x install-redis-single.sh 6.0.3 version=$1 usage ...

  8. 容器监控:cAdvisor

    CAdvisor是Google开源的一款用于展示和分析容器运行状态的可视化工具.通过在主机上运行CAdvisor用户可以轻松的获取到当前主机上容器的运行统计信息,并以图表的形式向用户展示. 在本地运行 ...

  9. 报错 Invalid options in vue.config.js: "baseUrl" is not allowed 问题解决

    报错 Invalid options in vue.config.js: "baseUrl" is not allowed vue3.0版本中 执行 npm run build会出 ...

  10. 使用css制作轮播图

    <!--HTML代码--> <!DOCTYPE html> <html lang="en"><head> <meta char ...