PrimeFaces CommandLink在动态数据表中

时间:2015-04-05 08:04:39

标签: jsf-2 primefaces datatable commandlink

我有面包屑和数据表 enter image description here

列数是动态的。 (即:点击痕迹中的“Header7”时,将显示7个标题栏加一个“更多信息”列)。
我使用primefaces-datatable-columns创建了数据表
我的xhtml文件是:

<p:dataTable id="dataMain" var="car" value="#{orgUnitBean.rows}">
    <p:columns value="#{orgUnitBean.columns}" var="column"
        columnIndexVar="colIndex" sortBy="#{car[column.property]}" filterBy="#{car[column.property]}">
        <f:facet name="header">
            <h:outputText value="#{column.header}" />
        </f:facet>
        <h:outputText value="#{car[column.property]}" />
    </p:columns>
</p:dataTable>

问题:
如何在“更多信息”列中添加commandLink。 (目前我只是在其中显示最后一个“Header”实体的“id”。在附图中:3是unitL3的id,13是Lnitu3的id。我想用commandLink替换它,它将调用bean方法并传递这些id作为它的参数)。

由于

1 个答案:

答案 0 :(得分:1)

将commandLink的rendered属性与colIndex结合使用。把它放在像这样的列中

<p:commandLink rendered="#{colIndex == 5}" ... />

其中5是more-info列的索引。如果需要,您还可以在colum标题上进行字符串比较。

(这是一个非常基本的jsf模式btw)