ajax上传文件提交时,enctype=multipart/form-data怎么带过去?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ajax上传文件提交时,enctype=multipart/form-data怎么带过去?相关的知识,希望对你有一定的参考价值。
急急急。大虾们。ajax上传文件提交时,enctype=multipart/form-data怎么带过去?我是在上传图片。ajax上传完之后还要返回本页面见图片显示出来。
目前的情况下,没有直接ajax提交file的可能有一些js库你可以使用,他们做的方法往往是在页面新建一个iframe,然后在frame里面建一个file的input组件,然后在那个frame里面走submit
这样就做成了异步的样子,submit那个的form你就可以设置enctype了 参考技术A
form中的字段,加上get set方法
private FormFile file;
private String filename;
private String filesize;
action 部分:
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception
String dir="D:/";
UpFileForm uff=(UpFileForm)form;
FormFile file=uff.getFile();
if(file.getFileSize()==0)
return mapping.findForward("success");
String fname=file.getFileName();
String size=Integer.toString(file.getFileSize())+"bytes";
InputStream streamIn=file.getInputStream();
OutputStream streamOut=new FileOutputStream(dir+"/"+fname);
int bytesRead=0;
byte[] buffer=new byte[8192];
while((bytesRead=streamIn.read(buffer,0,8192))!=-1)
streamOut.write(buffer,0,bytesRead);
streamOut.close();
streamIn.close();
uff.setFilename(fname);
uff.setFilesize(size);
file.destroy();
return mapping.findForward("success");
这样将上传的文件存在d盘。
以上是关于ajax上传文件提交时,enctype=multipart/form-data怎么带过去?的主要内容,如果未能解决你的问题,请参考以下文章