gpt4 book ai didi

jsf - 如何使用 Primefaces 下载多个文件

转载 作者:行者123 更新时间:2023-12-04 19:53:48 26 4
gpt4 key购买 nike

我有一个数据表,用户将从该表中选择一些文件,当他点击“下载”按钮时,他将下载这些文件。下面的代码完美运行,但是有一个 InputStreamList,正如您在此处看到的那样,不仅必须下载第一个流,还必须下载其他流。有什么想法吗?

这是我的 Controller 方法;

StreamedContent file;

public void downloadFile(){
InputStream stream = streamList.get(0);
file = new DefaultStreamedContent(stream, "xml", getRandomName());
}

我的观点;

<p:commandButton value="Download"
ajax="false"
actionListener="#{myController.downloadFile()}"
icon="ui-icon-disk">
<p:fileDownload value="#{myController.file}" />
</p:commandButton>

最佳答案

使用 Javascript 模拟每个文件的 onClick 事件。

显示文件

 <p:commandButton  value="Download" ajax="false"  icon="ui-icon-arrowthick-1-s" styleClass="foo">
<p:fileDownload value="#{fileDownloadView.file}" />
</p:commandButton>

下载所有按钮

<p:commandButton value="DownloadAll" ajax="false" onclick="start()" icon="ui-icon-arrowthick-1-s"/>

Javascript

function start() {                    
var buttons = $(".foo");
$(buttons).each(function(){
$(this).click();
});

}

关于jsf - 如何使用 Primefaces 下载多个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18982814/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com