我有以下
<p:commandButton id="menuButton" value="ADD" type="button" />
<p:tieredMenu overlay="true" trigger="menuButton" my="left top" at="left bottom" style="width:150px">
<p:menuitem id="addProspectLink">
<p:commandLink action="#{myController.oneAction}" value="Menu One" immediate="true" process="@this">
<f:param name="id" value="#{myController.idValue}" />
</p:commandLink>
</p:menuitem>
<p:menuitem id="searchProspectLink">
<p:commandLink action="#{myController.twoAction}" value="Menu Two" immediate="true" process="@this">
<f:param name="id" value="#{myController.idValue}" />
</p:commandLink>
</p:menuitem>
这与我想要的方式一样好,除了单击菜单后不隐藏菜单。
有人可以帮助我在单击链接后隐藏链接吗?
环境:JSF 2.2,PrimeFaces 6.2和Java 1.7
答案 0 :(得分:2)
p:tieredMenu
有一些client side api,只需使用hide()
方法:
<h:form id="myForm">
<p:commandButton id="menuButton" value="ADD" type="button" />
<p:tieredMenu widgetVar="myMenu" overlay="true" trigger="menuButton"
my="left top" at="left bottom">
<p:menuitem id="a">
<p:commandLink value="Reinstate Monica" process="@this"
immediate="true" action="#{myBean.doSomething()}" onstart="PF('myMenu').hide();"/>
</p:menuitem>
</p:tieredMenu>
</h:form>
不是我已经添加了p:tieredMenu widgetVar="myMenu"
和p:commandLink onstart="PF('myMenu').hide();"