我想有这样的东西,一个列,在这个专栏里面我可以有一个基于另一个配置的编辑器,但是当我尝试了这个代码时p:column不会渲染p:cellEditor。
<p:column headerText="Tipo">
<ui:fragment rendered="#{_field.isType('String')}">
<p:cellEditor>
<f:facet name="output"> <h:outputText value="#{_field.sValue}" rendered="#{_field.isType('String')}" /></f:facet>
<f:facet name="input"> <p:inputText value="#{_field.sValue}" style="width:100%" rendered="#{_field.isType('String')}" /></f:facet>
</p:cellEditor>
</ui:fragment>
<ui:fragment rendered="#{_field.isType('Integer')}">
<p:cellEditor>
<f:facet name="output"> <h:outputText value="#{_field.iValue}" rendered="#{_field.isType('Integer')}" /> </f:facet>
<f:facet name="input"> <p:inputText value="#{_field.iValue}" rendered="#{_field.isType('Integer')}" style="width:100%" /></f:facet>
</p:cellEditor>
</ui:fragment>
<ui:fragment rendered="#{_field.isType('Ativo')}">
<p:cellEditor>
<f:facet name="output"> <h:outputText value="#{_field.aValue.nome}" rendered="#{_field.isType('Ativo')}" /></f:facet>
<f:facet name="input">
<p:selectOneMenu value="#{_field.aValue}" style="width:100%" rendered="#{_field.isType('Ativo')}">
<f:selectItems value="#{ativoBean.listaAtivos}" var="_asset" itemLabel="#{_asset.nome}" itemValue="#{_asset}" />
<f:converter converterId="ativoConverter" />
</p:selectOneMenu>
</f:facet>
</p:cellEditor>
</ui:fragment>
</p:column>
答案 0 :(得分:0)
它有效
<p:column headerText="Tipo">
<p:cellEditor>
<f:facet name="output">
<ui:fragment rendered="#{_field.isType('String')}">
<h:outputText value="#{_field.sValue}" rendered="#{_field.isType('String')}" />
</ui:fragment>
<ui:fragment rendered="#{_field.isType('Integer')}">
<h:outputText value="#{_field.iValue}" rendered="#{_field.isType('Integer')}" />
</ui:fragment>
<ui:fragment rendered="#{_field.isType('Ativo')}">
<h:outputText value="#{_field.aValue.nome}" rendered="#{_field.isType('Ativo')}" />
</ui:fragment>
</f:facet>
<f:facet name="input">
<ui:fragment rendered="#{_field.isType('String')}">
<p:inputText value="#{_field.sValue}" style="width:100%" rendered="#{_field.isType('String')}" />
</ui:fragment>
<ui:fragment rendered="#{_field.isType('Integer')}">
<p:inputText value="#{_field.iValue}" rendered="#{_field.isType('Integer')}" style="width:100%" />
</ui:fragment>
<ui:fragment rendered="#{_field.isType('Ativo')}">
<p:selectOneMenu value="#{_field.aValue}" style="width:100%" rendered="#{_field.isType('Ativo')}">
<f:selectItems value="#{ativoBean.listaAtivos}" var="_asset" itemLabel="#{_asset.nome}" itemValue="#{_asset}" />
<f:converter converterId="ativoConverter" />
</p:selectOneMenu>
</ui:fragment>
</f:facet>
</p:cellEditor>