12

默认情况下,primefaces 手风琴面板的第一个选项卡在页面加载时显示为打开。有没有办法可以在页面加载时关闭它。

谢谢

4

6 回答 6

20

你可以做

<p:accordionPanel activeIndex="-1">
于 2012-04-24T16:14:54.163 回答
7

一种方法是定义一个widgetVar:

<p:accordionPanel widgetVar="accordion">
    ...
</p:accordionPanel>

接着:

<body onload="PF('accordion').unselect(0)">

或对于较旧的 PF 版本:

<body onload="accordion.unselect(0)">
于 2012-04-17T10:23:58.703 回答
7

如果将 activeIndex 设置为空白(Primefaces 3.4.1),它将起作用。

<p:accordionPanel activeIndex="">
于 2013-01-24T10:31:32.903 回答
2

在 PrimeFaces 3.5.x 中,没有一个已发布的回答对我有用。使用多种模式,但是:

<p:accordionPanel multiple="true" activeIndex="null" ... >
于 2013-07-16T16:56:03.727 回答
1

您可以使用 PF 函数来执行此操作,如下代码所示:

PF('accordionWidgetVarName').unselect(0);
于 2016-04-20T18:38:55.003 回答
0

回答 PrimeFaces 6.0 用户:

您可以设置 widgetVar 属性,然后调用 PF('widgetVarValue').unselect(0); 正如弗雷德波利卡波所说;但是,我无法在手风琴load上使用它,我尝试了各种方法,例如使用 div 的 onload 事件、使用启用了 autoRun 的 remoteCommand,甚至使用自定义 jQuery。只有当我在控制台中运行 PF unselect 调用时,这些都不适用于加载事件。

在 PrimeFaces 6.0 中,您可以使用 activeIndex 属性并将其设置为多个值,例如“1,3,5”,以关闭所有选项卡但打开第 2、第 4 和第 6 个选项卡(以 0 为基数索引)。

于 2017-01-31T14:50:15.913 回答