怎么用struts2实现多图片上传???急~~~~

lys199204062141 2012-11-19 12:11:36
我现在用的框架是struts2+ibatis+spring ,我要实现图片上传。。。。
引用

点击一个新增按钮,可以上传多个图片,如果木有点击新增,就一个图片上传??请问这个要怎么做?
请求大家帮帮忙???多谢。。。
...全文
245 点赞 收藏 12
写回复
12 条回复
lys199204062141 2012年11月19日
引用 1 楼 suciver 的回复:
前台的是file元素的name属性都是files就可以了 新增元素 JavaScript code?12345var fileInput=document.createElement("input");fileInput.type="file";fileInput.name="files";document.getElementById("你图片添加div的Id").……
你能给我一个详细的例子么?
回复 点赞
suciver 2012年11月19日
前台的是file元素的name属性都是files就可以了 新增元素

var fileInput=document.createElement("input");
fileInput.type="file";
fileInput.name="files";
document.getElementById("你图片添加div的Id").appendChild(fileInput);
action中用List<File> files;或File[] files

public UploadAction extends ActionSupport{
    private List<File> files;
    public void setFiles(List<File> files){
           this.files=files;
    }
    public List<File> getFiles(){
           return files;
    }
}
回复 点赞
lys199204062141 2012年11月19日
引用 8 楼 suciver 的回复:
引用 7 楼 lys199204062141 的回复:引用 3 楼 suciver 的回复: 这个例子写起来有点长,你是那一部分的不会是js的还是action的 action 不会 Java code?1234567891011121314151617181920212223public class UploadAction extends ActionSupp……
我是用绝对路径好点还是用相对路径?
回复 点赞
wzj_vip 2012年11月19日
引用 10 楼 fun_f 的回复:
例子已发送,记得给分
这位仁兄还真是实在
回复 点赞
fun_f 2012年11月19日
例子已发送,记得给分
回复 点赞
suciver 2012年11月19日
既然写了索性手写下前台的js 进攻参考

<head>
<script>
	function createFileButton(){
		var div=document.getElementById("uploadDiv");
		var fileButton=document.createElement("input");
		fileButton.type="file";
		fileButton.name="files";
		var removeButton=document.createElement("input");
		var br=document.createElement("br");
		removeButton.type="button";
		removeButton.value="删除";
		removeButton.onclick=function(){
			div.removeChild(fileButton);
			div.removeChild(removeButton);
			div.removeChild(br);
		}
		div.appendChild(fileButton);
		div.appendChild(removeButton);
		div.appendChild(br);
	}
	</script>
  </head>
  
  <body>
  <form action="upload.action" enctype="multipart/form-data" method="post">
  <div id="uploadDiv">
  		<input type="file" name="files"/><input type="button" onclick="createFileButton()" value="新增"/><br>
  </div>
  <input type="submit" value="提交"/>
  </form>
  </body>
回复 点赞
suciver 2012年11月19日
引用 7 楼 lys199204062141 的回复:
引用 3 楼 suciver 的回复: 这个例子写起来有点长,你是那一部分的不会是js的还是action的 action 不会

public class UploadAction extends ActionSupport {
	private List<File> files;//文件
	private String[] filesFileName;//文件真实名字
	
	@Override
	public String execute() throws Exception {
		int i=0;
//我这里是直接放在f盘你可以根据你的需求放在那里
		for(File file:files){
			FileUtils.copyFile(file, new File("f:",filesFileName[i++]));
		}
		return SUCCESS;
	}

	public void setFiles(List<File> files) {
		this.files = files;
	}

	public void setFilesFileName(String[] filesFileName) {
		this.filesFileName = filesFileName;
	}
}
回复 点赞
lys199204062141 2012年11月19日
引用 3 楼 suciver 的回复:
这个例子写起来有点长,你是那一部分的不会是js的还是action的
action 不会
回复 点赞
lys199204062141 2012年11月19日
1187824588@qq.com
回复 点赞
fun_f 2012年11月19日
把你邮箱发来,我硬盘刚好存一个例子
回复 点赞
suciver 2012年11月19日
这个例子写起来有点长,你是那一部分的不会是js的还是action的
回复 点赞
发动态
发帖子
Web 开发
创建于2007-09-28

5.2w+

社区成员

34.1w+

社区内容

Java Web 开发
社区公告
暂无公告