【发布时间】:2018-05-16 14:51:34
【问题描述】:
我想在 struts 2 中使用 ajax 上传文件 excel 但得到空值, 我在我的jsp页面中使用纯html标签,我认为这不是问题
这是我尝试的:
jsp:
<form id="uploadImgForm" action="fileUploadAction" method="post" enctype="multipart/form-data">
<input type="file" name="myFile" id="UploadFile">
<input type="button" value="Upload" onclick="uplod()">
</form>
这是ajax函数
ajax:
function uplod(){
var form = $('#uploadImgForm')[0];
var data = new FormData(form);
$.ajax({
type: "POST",
enctype: 'multipart/form-data',
url: "fileUploadAction",
data : data,
cache: false,
processData: false,
contentType: false,
success: function() {
console.log("SUCCESS ");
},
error: function() {
console.log("ERROR");
}
});
}
struts 2 xml:
<action name="fileUploadAction" class="id.co.yutaka.mandoc.action.tesUplod">
<result type="json"></result>
</action>
集体诉讼:
public class tesUplod extends ActionSupport{
private File myFile;
String myFileFileName;
@Override
public String execute(){
System.out.println("file ="+ myFile);
System.out.println("file ="+ myFileFileName );
return SUCCESS;
}
public File getMyFile() {
return myFile;
}
public void setMyFile(File myFile) {
this.myFile = myFile;
}
public String getMyFileFileName() {
return myFileFileName;
}
public void setMyFileFileName(String myFileFileName) {
this.myFileFileName = myFileFileName;
}
}
输出:
myFile =null
myFileFileName =null
【问题讨论】: