我必须一次上传多个文件。我已将这些文件添加到表格中。我想将表中添加的这些文件发送到我的动作类。但是我无法这样做?
我的jquery就像
$(document).ready(function(){
$("#table").hide();
$("#table1").hide();
$('#fileButton').on("click",function(e) {
e.preventDefault();
});
});
这个文件正在表中添加
function addFile() {
var fileName = $("#myFile").val();
if(fileName.lastIndexOf('/')!=-1) {
fileName = fileName.substring(fileName.lastIndexOf('/')+1);
} else if(fileName.lastIndexOf('\\')!=-1){
fileName = fileName.substring(fileName.lastIndexOf('\\')+1);
}
if(!isFilePresent(fileName)){
$("#table").show();
$("#table1").show();
var row = '<tr><td class="filename">'+fileName+'</td></tr>';
$("#myTable tbody").append(row);
}
$("#myFile").val("");
}
这是我的表格
<form action="documentUpload" method="POST" enctype="multipart/form-data">
<s:file label="File (1)" id="myFile" name="upload" />
<input type="button" value="ADD" class="Button"
id="fileButton" onclick="addFile();"/>
<table id="myTable">
<thead>
<tr>
<div>File Type</div>
</tr>
</thead>
<tbody>
</tbody>
</table>
<s:submit value="Upload" id="table1"/>
</form>
这是我的struts.xml条目
<action name="documentUpload" class="objDocumentUpload" method="upload">
<result name="success">/jsp/documentUpload2.jsp</result>
<result name="input">/jsp/dashboard.jsp</result>
</action>
这是我的动作类。
public class FileUploadAction {
private List<File> uploads = new ArrayList<File>();
public String upload() throws Exception {
int upload12=uploads.size();
System.out.println(upload12);
return SUCCESS;
}
我成功地在表格中添加了文件。当我点击上传按钮时,控件将转移到我的动作类。但是在上传方法中,我将upload12
的大小设为零。
请提供任何有用的解决方案,以便我可以通过表格上传文件
答案 0 :(得分:0)
您的表只是一个客户端显示,在POST期间不会使用。 您需要在表单中创建“文件”字段,而不是表格行。