代码如下:
后台使用的是spring基于注解的控制器
- Java code
@RequestMapping("/withdrawalupload") @ResponseBody public String withdrawalupload(HttpServletRequest request){ DiskFileItemFactory factory=new DiskFileItemFactory(); ServletFileUpload upload=new ServletFileUpload(factory); try { List<?> items=upload.parseRequest(request); System.out.println(items.isEmpty()); } catch (FileUploadException e) { e.printStackTrace(); } return ""; }
下页是页面的代码
<!-- 图片上传-->
<tr align="center">
<td colspan="4" style="background-color:#FFF" >
<table width="100%" border="0" cellspacing="0" cellpadding="0" style="font-size:12px; line-height:32px">
<tr>
<td>退货图片上传:<input type="file" name="fileuploads" id="fileuploads"/>
<input type="button" value="上传" onclick="ajaxfileupload()"/></td>
<td>支持JPG,GIF,JEPG,PNG</td>
<td><input type="hidden" name="page" value="3"></input>
<input type="hidden" name="withdrawal_id" value="${om.withdrawal_id}"></input></td>
</tr>
</table>
</td>
</tr>
javascript的代码
function ajaxfileupload(){
$.ajaxFileUpload({
url:'withdrawalupload',
secureuri:false,
fileElementId:"fileuploads",
dataType: 'json',
success: function (data, status) {
alert("添加成功!");
},
error: function (data, status, e){
alert("添加失败!");
}
});
}
javascript所需要的插件包已经导入,请求也发送到了后台,在后台控制器中 items的项一直是0(接收不到前台上传的文件)
------解决方案--------------------
额。。。虽然遇到过items为0的情况,但我用了struts的,只能帮顶一下了。
------解决方案--------------------
楼主用的是spring MVC?
------解决方案--------------------
楼主,如果你没有自己写相关的实现,请问你spring-web包导进去没有
------解决方案--------------------
把action继承UploadAction
或者直接用servlet
------解决方案--------------------
用mvc做上传时,form的类型设置成mutilfile吧,还有好像 是要注意类型
------解决方案--------------------
你这上传是为了无刷新吗,可以看看这个:http://blog.csdn.net/huxiweng/article/details/7272338
------解决方案--------------------