PrimeFaces文件上传缩略图

3

我想上传多个文件,但在执行上传后,缩略图消失了,我不知道上传了哪些文件。是否有一种方法在上传后保留带名称的缩略图?


虽然不完全符合您的要求,但您可以在后端Bean中处理文件名和文件数量,然后使用outputText、<p:growl>或<p:messages>在视图中显示这些信息,类似于Primefaces Showcase中multiple fileupload所使用的方法。 - Wen Ping
Primefaces不能自动处理这个问题,你需要自己完成。如果只有文件名对你足够了,那就很简单。你可以在bean中使用一个字符串列表来存储上传的文件名,并在页面上使用p:dataList或ui:repeat进行显示。如果你还想显示缩略图,那就更复杂了。我已经找到了一种方法,但它并不完美。 - damian
“Miniature”指的是缩略图,是否与所选文件的预览相同?抱歉,我的英语不太好。 - blitzen12
@blitzen12:一旦您选择文件,所选图像会显示为小缩略图。我想他也想保留这些缩略图。 - Daniel
1个回答

1
我认为我已经完成了这个任务,但我不确定你是否指的是这个。 无论如何.. 我使用<ui:repeat>来显示所选的图片。
下面是代码片段:
 <p:outputPanel id="imagePreview">
    <ui:repeat value="#{clientController.images}" var="uploadedImages">
         <p:graphicImage value="#{controller.imageSelected}" height="135" width="135" styleClass="images"/>
    </ui:repeat>
</p:outputPanel>

在你的 <p:fileUpload> 中。
<p:fileUpload id="clientProfile" immediate="true" auto="true" allowTypes="/(\.|\/)(gif|jpe?g|png)$/" fileUploadListener="#{controller.uploadListener}" mode="advanced" multiple="true" update="imagePreview"/>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接