默认情况下,primefaces 手风琴面板的第一个选项卡在页面加载时显示为打开。有没有办法可以在页面加载时关闭它。
谢谢
你可以做
<p:accordionPanel activeIndex="-1">
一种方法是定义一个widgetVar:
<p:accordionPanel widgetVar="accordion">
...
</p:accordionPanel>
接着:
<body onload="PF('accordion').unselect(0)">
或对于较旧的 PF 版本:
<body onload="accordion.unselect(0)">
如果将 activeIndex 设置为空白(Primefaces 3.4.1),它将起作用。
<p:accordionPanel activeIndex="">
在 PrimeFaces 3.5.x 中,没有一个已发布的回答对我有用。使用多种模式,但是:
<p:accordionPanel multiple="true" activeIndex="null" ... >
您可以使用 PF 函数来执行此操作,如下代码所示:
PF('accordionWidgetVarName').unselect(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 为基数索引)。