2012-02-15 97 views
0

我有一个问题,我需要一些想法来解决这个问题:显示或隐藏的slideToggle在JSF

我有一个JSF页面WEP。索引只有ui:装饰并显示一些页面。 网页中的每个链接调用index.xhtml并重新加载所有部分。

其中一个部分是菜单,它可以显示或隐藏,感谢带有SlideToggle函数的JQuery代码(感谢BalusC的帮助)。

我在菜单中有slidetoggle()的4个部分。他们都开始关闭(显示:无)。

问题是,当我在一些链接点击这些部分(现在显示)的网页刷新,现在....他们又隐藏着一个....

我想你知道我想要什么。我如何解决这个问题?

感谢我们所有帮助:)

回答

1

使用Ajax的链接,而不是常规的链接和重新渲染只有那些不包含这些面板的部分

例如更换

<h:commandLink value="link" action="#{bean.action}" /> 

通过

<h:commandLink value="link" action="#{bean.action}"> 
    <f:ajax execute="some" render="some" /> 
</h:commandLink> 

顺便说一句,而不是用原始的jQuery hassling,你也可以只使用它使用jQuery的被窝里JSF组件。例如,PrimeFaces <p:panel>

<p:panel toggleable="true" visible="false"> 
    ... 
</p:panel> 
<p:panel toggleable="true" visible="false"> 
    ... 
</p:panel> 
... 

就这样。

+0

mmmmm Ajax链接?? 我有这样的链接: Atribute“Contenido”用于改变其中一个UI :在索引中进行修饰以显示另一个网页。 你能给我一个Ajax链接的例子吗? – Roberto 2012-02-15 19:04:14

+0

把''放在里面。另见[JSF2中的通信](http://balusc.blogspot.com/2011/09/communication-in-jsf-20.html#AjaxPOSTForm)。 – BalusC 2012-02-15 19:07:33

+0

我想即将使用PrimeFaces面板,因为使用Ajax,我可以更改Atribue,但我需要调用索引,因为它可以再次提供并显示另一个网页。感谢您的帮助BalusC – Roberto 2012-02-15 19:16:13