【问题标题】:hide/show inputText depends on selectBooleanCheckBox [duplicate]隐藏/显示 inputText 取决于 selectBooleanCheckBox [重复]
【发布时间】:2020-01-01 04:21:37
【问题描述】:

当用户点击复选框时,我尝试显示/隐藏 inputText。 当我使用 update=@form 时,它可以工作,但如果我提供 id,它不会

为什么?

下面是一个简单的例子

primefaces 5.3(测试与 6.0 相同)

<h:form id="formId">

<p:outputPanel id="panel1" rendered="#{!param['checkb'].checked}">
<p:outputLabel value="input 1"/>
<p:inputText id="i1" value="#{employe.prenom}" />
</p:outputPanel>

<p:outputPanel id="panel2" rendered="#{param['checkb'].checked}">
<p:outputLabel value="input 2"/>
<p:inputText id="i2" value="#{employe.prenom}"/>
</p:outputPanel>

<p:selectBooleanCheckbox value="#{employe.mobileAsContact}" id="checkB">
    <p:ajax update="panel1 panel2"></p:ajax>
</p:selectBooleanCheckbox>

</h:form>

【问题讨论】:

    标签: jsf primefaces


    【解决方案1】:

    这个问题解决了:https://forum.primefaces.org/viewtopic.php?t=33980

    用 h:panelGroup 包围输入并更新此面板...工作完成

    <h:panelGroup id="panelGroupGlobal">
                <p:outputPanel id="panel1" rendered="#{!employe.mobileAsContact}">
                    <p:outputLabel value="input 1" for="i1" />
                    <p:inputText id="i1" value="#{employe.prenom}" required="true"/>
                </p:outputPanel>
    
                <p:outputPanel id="panel2" rendered="#{employe.mobileAsContact}">
                    <p:outputLabel value="input 2" for="i2"/>
                    <p:inputText id="i2" value="#{employe.prenom}" />
                </p:outputPanel>
            </h:panelGroup>
    
            <p:selectBooleanCheckbox value="#{employe.mobileAsContact}"
                id="checkB">
                <p:ajax update="formId:panelGroupGlobal"></p:ajax>
            </p:selectBooleanCheckbox>
    

    【讨论】:

    • 您的原始问题是重复的,您的新问题不应在答案中提出,而应在新问题中提出(有意义不是吗)?
    • 你说得对。 **新编辑:**删除第二个问题
    猜你喜欢
    • 1970-01-01
    • 2011-03-20
    • 1970-01-01
    • 2013-02-02
    • 1970-01-01
    • 1970-01-01
    • 2020-10-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多