9

上传文件后,我想在 fileUpload 组件下方显示上传的文件。默认情况下,它只在我选择文件时显示文件,但在我按下上传按钮后文件名消失。我检查了 fileUpload 标记的所有属性,但找不到与之相关的任何内容。

编辑:谢谢丹尼尔,您的解决方案运行良好,但您知道 outputText 是 fileUploader 下的外部文本我想知道 primeFaces 是否有解决方案可以在上传文件时显示文件,如下图所示我想在上传后也看到文件名:

在此处输入图像描述

4

1 回答 1

8

只需放置 a<h:outputText并在之后用您的 bean 中的文件名填充它,然后用您的更新它p:fileUpload

像这样

<h:form prependId="false" enctype="multipart/form-data">
    <p:fileUpload update="@form" mode="advanced" auto="true" 
        fileUploadListener="#{myBean.myFileUpload}"/>
    <h:outputText value="#{myBean.myFileName}"/>    
</h:form>                                   

在你的 bean 里面:

public void myFileUpload(FileUploadEvent event) {
    myFileName = FilenameUtils.getName(event.getFile().getFileName());
}

另请查看以下 BalusC 答案:event.getFile().getFileName() is return filename with complete path in JSF2.0 with PrimeFaces 3.5

于 2013-06-27T11:19:07.390 回答