Jsf 如何打开PrimeFaces手风琴面板中所有动态加载的选项卡
我正在将表的内容加载到PrimeFaces 4.0手风琴面板中,每一行对应一个动态加载的选项卡。我可以这样做,但默认情况下只打开第一个选项卡 通常,要在默认情况下打开多个手风琴面板,请使用Jsf 如何打开PrimeFaces手风琴面板中所有动态加载的选项卡,jsf,primefaces,Jsf,Primefaces,我正在将表的内容加载到PrimeFaces 4.0手风琴面板中,每一行对应一个动态加载的选项卡。我可以这样做,但默认情况下只打开第一个选项卡 通常,要在默认情况下打开多个手风琴面板,请使用activeIndex=“tabIndexList”,其中tabIndexList是要打开的选项卡列表 例如: <p:accordionPanel multiple ="true" activeIndex="0,1,2"> 在最新版本的PrimeFaces(4.0)发布之前,还没有打开所有选项卡的
activeIndex=“tabIndexList”
,其中tabIndexList
是要打开的选项卡列表
例如:
<p:accordionPanel multiple ="true" activeIndex="0,1,2">
在最新版本的PrimeFaces(4.0)发布之前,还没有打开所有选项卡的功能。但是,如果支持bean返回一个包含集合所有索引的字符串,那么您的方法就会起作用 比如:
public String returnActiveIndexString(){
totalNumberOfTabs=getTotalNumberOfTabs();
StringBuilder out=新的StringBuilder();
字符串前缀=”;
对于(int i=0;i
对我来说,触发点击事件很重要,因为我必须在点击时初始化一些数据,所以我用以下方式解决了它:1。通过将activeTabindex设置为“-1”,2关闭所有选项卡。单击每个选项卡。p:accordionPanel需要具有属性multiple=“true”
对于我来说,我只想显示所有用于打印的选项卡 动态更新CSS类是最好的方法 以下是如何使用JQuery执行此操作:
<span onclick="$('.ui-accordion-content.ui-helper-hidden').css('display','block')" >
Printable version
</span>
可打印版本
当需要字符串时,在此处返回StringBuilder。此外,我得到了异常类'BackingBean$Proxy$\u$$\ uWeldClientProxy'没有'returnActiveIndexString'属性。
@dasLort我没有所有的back bean代码,所以我给出了一种解决方法。这可能是因为您不必根据自己的bean调整代码。您可能会遇到此错误,因为方法调用中缺少参数。为什么不将其添加到带有媒体类型打印的CSS中?是的,我可能也会这样做,但实际上我还需要一个展开/折叠链接,允许用户一次切换所有内容,而不必触碰java bean。
public String returnActiveIndexString(){
totalNumberOfTabs = getTotalNumberOfTabs();
StringBuilder out = new StringBuilder();
String prefix = "";
for(int i = 0; i < totalNumberOfTabs; i++){
out.append(prefix);
prefix = ",";
out.append(i);
}
return out.toString();
}
<p:commandButton value="open"
actionListener="#{beanController.setActiveTabIndex('-1')}"
update="accordionPanel"
oncomplete="$('.ui-accordion-header').click();" />
<span onclick="$('.ui-accordion-content.ui-helper-hidden').css('display','block')" >
Printable version
</span>