2017-09-22 79 views
0
<p:fileUpload fileUploadListener="#{fileUploadView.handleFileUpload}" mode="advanced" auto="true" /> 

以下設置自動爲true。預覽面板不見了 auto to truep:fileupload,當set auto = true時如何顯示預覽div

下面是設置自動爲false。預覽面板顯示 auto to false

當設置自動爲true,PrimeFaces刪除預覽股利。導致在保存前無法刪除上傳的文件。有沒有解決方法? 自動設置爲true,但仍顯示出接近IMG預覽面板刪除上傳的文件。

+0

的 '預覽面板' 與 'CANCLE /關閉/刪除' 按鈕是刪除/防止圖像被上傳。而'auto = true'則立即上傳圖片,以防止上傳。此功能不適用於刪除上傳的圖像。這是你需要在例如一個DataGrid /數據表/ ... – Kukeltje

+0

確定..感謝。爲了解決這個問題,我添加了一個面板來顯示上傳的文件和選項從那裏刪除。 – MnTanProject

+0

請複製我的評論的大部分地區,並添加您的代碼解決方案的最相關的部分都在回答中 – Kukeltje

回答

0

如從上面的評論>的「預覽面板」與「CANCLE /關閉/刪除」按鈕是刪除/防止圖像被上傳。而在auto = true的情況下,圖片立即上傳,防止上傳不可能。此功能不適用於刪除上傳的圖像。 「通過Kukeltje

澄清我的汽車的誤解= true選項的解決方案如下:。

  • 由於文件已經上傳,使用後端bean來臨時保持和不保存到實際路徑或數據庫顯示值(在我的情況下,實際路徑)

後端bean的方法:

List<UploadedFile> uploadedPhotoes = new ArrayList<UploadedFile>(); 
public void handleFileUpload(FileUploadEvent event) { 
    uploadedPhotoes.add(event.getFile()); 
} 
public void removeUploadedPhoto(int index) { 
    uploadedPhotoes.remove(index); 
} 

public String getImageContentsAsBase64(UploadedFile photo) { 
    return Base64.getEncoder().encodeToString(photo.getContents()); 
} 

在XHTML文件:

<ui:repeat var="photo" value="#{biddingPlaceBean.uploadedPhotoes}" varStatus="loop" > 

+0

不知道爲什麼它不顯示HTML代碼。粘貼在這裏。的 MnTanProject

+0

你的infentation代碼不正確。在每行的前面使用4個空格或'代碼'按鈕 – Kukeltje