单击JSF 1.2中的链接,使用trinidad添加动态列

时间:2014-03-30 08:21:54

标签: jsf jsf-1.2 trinidad

    <trh:tableLayout width="25%" borderWidth="3" cellSpacing="5"
        halign="center"    >
        <h:commandLink action="#{dataBean.setInitial}" value="ShowView">
        </h:commandLink>
        <trh:rowLayout  shortDesc="head">
            <tr:panelHeader size="4" text="Id" />

            <tr:forEach var="row"  begin="0" end="#{dataBean.size}" items="#{dataBean.dataList}">
            <tr:outputText value="#{row.id}" rendered="#{row.editable}"/>

            </tr:forEach>
        </trh:rowLayout>
        <trh:rowLayout>
            <tr:panelHeader size="4" text="Name" />
            <tr:forEach var="row" begin="0" end="#{dataBean.size}" items="#{dataBean.dataList}">
                <tr:outputText value="#{row.text}" rendered="#{row.editable}" />

            </tr:forEach>

        </trh:rowLayout>
    </trh:tableLayout>

我在trinidad中使用trh标签来显示行方式数据..

和输出就像......

显示视图


ID 2 1

姓名raj Narendra

我想通过点击链接显示视图来逐行添加动态列。如果我点击显示视图,它应该隐藏该列...请建议我如何添加渲染属性以及它应该在哪里。

1 个答案:

答案 0 :(得分:0)

你为什么不用

这样的事情:

<tr:commandLink action="#{dataBean.setInitial}" value="ShowView" id="showHideLink"/>
<tr:table value="#{dataBean.dataList}" var="row" id="itemTable" partialTrigger="showHideLink">
    <tr:column rendered="#{row.column1Visible}" id="itemCol">
        <tr:outputText value="#{row.text1}"/>
    </tr:column>
        <tr:column rendered="#{row.column2Visible}" id="itemCol">
    <tr:outputText value="#{row.text2}"/>
    </tr:column>  
</tr:table>

为了在单击链接时刷新表,请将表的partialTrigger属性设置为按钮的id。

要控制列的可见性,您需要使用dataList中的对象。 例如,您可以在这些对象中使​​用字段column1Visible和column2Visible(使用公共getter和setter)。