0

我有这段代码,我想在单击 cancelBtn 按钮时隐藏 panelGrid。

<h:form id="panelSend">
        <p:growl />

        <h:panelGrid rendered="#{writeMessageBean.activateText}" id="panelGrid">
           <p:outputLabel value="header" />
           <p:inputText value="#{writeMessageBean.header}" />
           <p:outputLabel/>
           <p:inputTextarea value="#{writeMessageBean.text}" required="true"/>

           <p:commandButton value="send" action="#{writeMessageBean.send}"  
           <p:commandButton id="cancelBtn" value="cancel" />


        </h:panelGrid>

  </h:form>

我的jQuery就是这个。

$(document).ready(function (){

        $("#panelSend\\:#panelGrid\\:#cancelBtn").click(function (){
            $("#panelSend\\:#panelGrid").hide();

         });
    });

这行不通。我尝试了更多的可能性,但它总是一样的。我能怎么做?

4

1 回答 1

0

尝试这个:

<p:commandButton id="cancelBtn" value="cancel" action="#{writeMessageBean.hidePanelGrid}" update="panelGrid" ajax="false" >

在你的 writeMessageBean 中:

 public void hidePanelGrid() {
    activateText = false;
 }

假设您在 bean 中有一个成员 activateText。

于 2014-11-01T17:58:27.757 回答