1

我想在 jsf 中使用必须动态添加行的 primefaces 创建一个数据表。但是动态添加的每一行都应该有不同的组件。例如,如果添加了第一行,那么它应该在所有列中包含 inputtext 组件。对于第二行,它应该在其第一列中包含 SelectOnemenu,并为其他列输入文本。同样,第三行应在第一列中包含输出文本,在其他列中包含输入文本。

4

1 回答 1

1

使用rendered属性。例如

<h:dataTable value="#{bean.fields}" var="field">
    <h:column>
        <h:inputText value="#{field.value}" rendered="#{field.type == 'TEXT'}" />
        <h:selectOneMenu value="#{field.value}" rendered="#{field.type == 'MENU'}">
            <f:selectItems value="#{field.availableValues}" />
        </h:selectOneMenu>
        <h:outputText value="#{field.value}" rendered="#{field.type == 'OUTPUT'}" />
    </h:column>
</h:dataTable>
于 2012-12-07T18:00:54.857 回答