richfaces 4 fileUpload组件删除上传的文件
编程技术  /  houtizong 发布于 3年前   116
页面代码
<h:form id="fileForm">
<rich:fileUpload fileUploadListener="#{fileUploadBean.listener}" id="upload"
onclear="clearFile(event);"/>
</h:form>
<a4j:jsFunction name="removeFile" action="#{fileUploadBean.clearFile}">
<a4j:param name="filename" assignTo="#{fileUploadBean.filename}"/>
</a4j:jsFunction>
<h:outputScript>
var clearFile = function (event) {
var data = event.rf.data;
for (var i in data) {
var item = data[i];
removeFile(item.name);
}
}
</h:outputScript>
Managed Bean 代码
public class FileUploadBean {
private Map<String, UploadedImage> files = new HashMap<>();
private String filename;
public void listener(FileUploadEvent event) throws Exception {
UploadedFile item = event.getUploadedFile();
UploadedImage file = new UploadedImage();
file.setLength(item.getData().length);
file.setName(item.getName());
file.setData(item.getData());
files.put(item.getName(), file);
}
public void clearFile() {
files.remove(filename);
}
public String getFilename() {
return filename;
}
public void setFilename(String filename) {
this.filename = filename;
}
public static class UploadedImage implements Serializable {
private static final long serialVersionUID = -8192553629588066292L;
private String name;
private long length;
private byte[] data;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public long getLength() {
return length;
}
public void setLength(long length) {
this.length = length;
}
public byte[] getData() {
return data;
}
public void setData(byte[] data) {
this.data = data;
}
}
}
请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!
技术博客集 - 网站简介:
前后端技术:
后端基于Hyperf2.1框架开发,前端使用Bootstrap可视化布局系统生成
网站主要作用:
1.编程技术分享及讨论交流,内置聊天系统;
2.测试交流框架问题,比如:Hyperf、Laravel、TP、beego;
3.本站数据是基于大数据采集等爬虫技术为基础助力分享知识,如有侵权请发邮件到站长邮箱,站长会尽快处理;
4.站长邮箱:[email protected];
文章归档
文章标签
友情链接