我有这段代码,我想在单击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();
});
});
这行不通。我尝试了更多的可能性,但总是一样。我该怎么办?
试试这个:
<p:commandButton id="cancelBtn" value="cancel" action="#{writeMessageBean.hidePanelGrid}" update="panelGrid" ajax="false" >
并且在您的writeMessageBean中:
public void hidePanelGrid() {
activateText = false;
}
假设您在bean中有一个成员activateText。