如何在Bootsfaces Datatable列中显示图像

时间:2018-03-22 00:54:21

标签: jsf datatable bootsfaces

我需要在数据表列中动态显示图像,我将图像放在本地文件夹中,如何在Bootsfaces数据表中执行此操作?

感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

只需在img中嵌套HTML b:dataTableColumn标记即可:

   <b:dataTable value="#{carPool.carPool}" var="car" class="editableCarTable">
      <b:dataTableColumn value="#{car.brand}" />
      <b:dataTableColumn label="Image">
        <img src="https://www.example.com/some.png" />
      </b:dataTableColumn>
    </b:dataTable>

您已经提到图像存储在本地文件夹中。您必须使Web服务器可以访问这些图像。通常,我是通过将图像复制到src/main/webapp/images来实现的。一旦图像存在,他们就会有一个URL,因此您可以使用此URL显示它们。

要使图像特定于行,请将URL放入行bean中,以便您可以像这样访问它:

   <b:dataTable value="#{carPool.carPool}" var="car" class="editableCarTable">
      <b:dataTableColumn value="#{car.brand}" />
      <b:dataTableColumn label="Image">
        <img src="#{car.rowSpecificURL()}" />
      </b:dataTableColumn>
    </b:dataTable>

当然,您也可以使用h:graphicImageb:image。两者都允许您从评论中上面提到的资源文件夹Mitch中受益。 BootsFaces b:image还支持工具提示,进度条等内容。