Primefaces - 如果选中该复选框,则会在复选框下方动态添加文本字段

时间:2017-02-20 17:01:55

标签: java jsf primefaces

在Primefaces(JSF)中,我有一个复选框列表。 (列表的数据来自DB)

如果用户勾选复选框,我想在复选框下方添加一个文本字段。

请提供任何提示,如何做到这一点?

HTML

    <p:column>
        <p:selectManyCheckbox id="resolutionPower" value="#{resBRRD_83_2_3_Bean.selectedResolutionPowers_DD}" layout="grid" columns="1" required="true">
            <f:selectItems value="#{resBRRD_83_2_3_Bean.resolutionPowers_DD}" var="data" itemValue="#{data}" itemLabel="#{data.tcdDesc}" />
            <o:converter converterId="omnifaces.ListConverter" list="#{resBRRD_83_2_3_Bean.resolutionPowers_DD}" />
        </p:selectManyCheckbox>
        <p:inputText />
    </p:column>

enter image description here

1 个答案:

答案 0 :(得分:0)

我设法如下所示,使用ui:使用单独的字段重复

<强> HTML

<ui:repeat var="gtField" value="#{resBRRD_83_2_3_Bean.resolutionPowers_DD}">
    <h:panelGroup id="resolutionPower">
        <p:selectBooleanCheckbox itemLabel="#{gtField.tcdDesc}" value="#{gtField.selected}">
            <p:ajax type="change" process="@this" update="@this resolutionPower" />
        </p:selectBooleanCheckbox>
        <br />
        <p:inputText rendered="#{gtField.selected}" style="width:100%" />
        <p:spacer height="5px" rendered="#{gtField.selected}" />
        <br />
    </h:panelGroup>
</ui:repeat>

完成上述修复后,

enter image description here