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 に答える