如何以编程方式折叠primefaces手风琴面板中的所有面板?

先生代码

我在primefaces对话框中有一个primefaces手风琴面板,并且每次打开该对话框(对话框是dynamic =“ true”)时,折叠手风琴面板的所有面板。

AccordionPanel具有特殊性,它可以具有0到2个面板,并且直到用户单击menuItem时才知道。这些面板是否存在取决于备用Bean中是否存在2个对象。

我的代码:

<p:accordionPanel activeIndex="-1" dynamic="true" widgetVar="accordionPanelWV" id="accordionPanel">
    <p:tab title="#{messages['comun.provA']}" rendered="#{productsBean.productSel.providerA != null}">
        ....
    </p:tab>
    <p:tab title="#{messages['comun.provB']}" rendered="#{productsBean.productSel.providerB != null}">
        ....
    </p:tab>
</p:accordionPanel>

我尝试了以下方法,但是都没有给我预期的结果

在打开/关闭对话框之前,在JS / Jquery中选择一个负数,空值或无效索引

PF('accordionPanelWV').select(-1);
PF('accordionPanelWV').select(null);
PF('accordionPanelWV').select("");

在打开/关闭对话框之前,取消选择JS / Jquery中的所有索引

PF('accordionPanelWV').unselect(0);
PF('accordionPanelWV').unselect(1);

我怎样才能做到这一点?

Primefaces 8.0版

谢谢

梅洛韦

这将在PF 9.0中修复:https//github.com/primefaces/primefaces/issues/6605

要添加selectAllunselectAll展开所有面板或折叠所有面板的方法,只需将此JS代码添加到您的应用程序即可。

if (PrimeFaces.widget.AccordionPanel) {
    PrimeFaces.widget.AccordionPanel.prototype.selectAll = function() {
        var $this = this;
        this.panels.each(function(index) {
            $this.select(index);
            if (!$this.cfg.multiple) {
                return false; // breaks
            }
        });
    };

    PrimeFaces.widget.AccordionPanel.prototype.unselectAll = function() {
        var $this = this;
        this.panels.each(function(index) {
            $this.unselect(index);
        });
    };
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在PrimeFaces手风琴面板中打开所有动态加载的选项卡

来自分类Dev

Bootstrap手风琴面板/折叠

来自分类Dev

如何以相同的顺序维护手风琴面板?

来自分类Dev

Extjs手风琴动态关闭所有面板

来自分类Dev

如果单击其父手风琴,如何折叠所有嵌套的手风琴?

来自分类Dev

如何在jquery中默认折叠所有手风琴?

来自分类Dev

单击时如何定位手风琴面板标题

来自分类Dev

面板中的jQuery手风琴对齐

来自分类Dev

在警告中打开jQuery手风琴面板

来自分类Dev

JQuery手风琴面板中的2列

来自分类Dev

首个手风琴面板打开

来自分类Dev

rich:手风琴折叠页面刷新上的所有手风琴项

来自分类Dev

如何以编程方式停止单击时打开Angular UI手风琴

来自分类Dev

如何以编程方式停止单击时打开Angular UI手风琴

来自分类Dev

将动态项目添加到具有布局手风琴的extjs面板中

来自分类Dev

如何使Bootstrap 3折叠的手风琴面板加载在其内容的顶部而不是一半?

来自分类Dev

如何使Bootstrap 3折叠的手风琴面板加载在其内容的顶部,而不是向下加载?

来自分类Dev

jQuery jQuery UI手风琴-不同的折叠面板?

来自分类Dev

Bootstrap手风琴-折叠时更改顶部面板的位置

来自分类Dev

Bootstrap 3-根据手风琴折叠状态更改面板标题中的Glyphicon

来自分类Dev

从其他控件关闭折叠面板(手风琴)

来自分类Dev

Bootstrap手风琴只能自动折叠一个面板

来自分类Dev

Bootstrap 3-根据手风琴折叠状态在面板标题中更改Glyphicon

来自分类Dev

Bootstrap手风琴只能自动折叠一个面板

来自分类Dev

从其他控件关闭折叠面板(手风琴)

来自分类Dev

如何使用 ZURB Foundation 6 折叠所有打开的手风琴

来自分类Dev

一键打开两个独立手风琴中的两个可折叠面板(面板组)

来自分类Dev

单击面板标题div时,bootstrap折叠手风琴出现,面板增大,然后归一化

来自分类Dev

Bootstrap嵌套手风琴,内部div不是面板

Related 相关文章

  1. 1

    如何在PrimeFaces手风琴面板中打开所有动态加载的选项卡

  2. 2

    Bootstrap手风琴面板/折叠

  3. 3

    如何以相同的顺序维护手风琴面板?

  4. 4

    Extjs手风琴动态关闭所有面板

  5. 5

    如果单击其父手风琴,如何折叠所有嵌套的手风琴?

  6. 6

    如何在jquery中默认折叠所有手风琴?

  7. 7

    单击时如何定位手风琴面板标题

  8. 8

    面板中的jQuery手风琴对齐

  9. 9

    在警告中打开jQuery手风琴面板

  10. 10

    JQuery手风琴面板中的2列

  11. 11

    首个手风琴面板打开

  12. 12

    rich:手风琴折叠页面刷新上的所有手风琴项

  13. 13

    如何以编程方式停止单击时打开Angular UI手风琴

  14. 14

    如何以编程方式停止单击时打开Angular UI手风琴

  15. 15

    将动态项目添加到具有布局手风琴的extjs面板中

  16. 16

    如何使Bootstrap 3折叠的手风琴面板加载在其内容的顶部而不是一半?

  17. 17

    如何使Bootstrap 3折叠的手风琴面板加载在其内容的顶部,而不是向下加载?

  18. 18

    jQuery jQuery UI手风琴-不同的折叠面板?

  19. 19

    Bootstrap手风琴-折叠时更改顶部面板的位置

  20. 20

    Bootstrap 3-根据手风琴折叠状态更改面板标题中的Glyphicon

  21. 21

    从其他控件关闭折叠面板(手风琴)

  22. 22

    Bootstrap手风琴只能自动折叠一个面板

  23. 23

    Bootstrap 3-根据手风琴折叠状态在面板标题中更改Glyphicon

  24. 24

    Bootstrap手风琴只能自动折叠一个面板

  25. 25

    从其他控件关闭折叠面板(手风琴)

  26. 26

    如何使用 ZURB Foundation 6 折叠所有打开的手风琴

  27. 27

    一键打开两个独立手风琴中的两个可折叠面板(面板组)

  28. 28

    单击面板标题div时,bootstrap折叠手风琴出现,面板增大,然后归一化

  29. 29

    Bootstrap嵌套手风琴,内部div不是面板

热门标签

归档