首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >显示前处理素数菜单

显示前处理素数菜单
EN

Stack Overflow用户
提问于 2015-10-15 10:02:54
回答 1查看 753关注 0票数 0

我有一个primefaces菜单,其中的项目在支持bean的条件下被禁用。问题是,条件是在更新之后处理的。

如果选择启用每个项的节点,然后切换到禁用所有项的节点,则会重新加载菜单,但在禁用项目之前,会显示启用的所有内容。

在菜单显示之前,是否有一种处理禁用条件的方法?

代码语言:javascript
复制
<h:form id="form">
    <p:tree id="tree" ...>
        <p:ajax event="select" update=":form:tree:menu" listener...>
        <p:treeNode id="treenode">
            <p:commandButton id="btn" type="button" />
            <p:overlayPanel for="btn">
                <p:menu id=menu">
                    <p:menuitem .... disabled="#{bean.condition1}" />
                    <p:menuitem .... disabled="#{bean.condition2}" />
                    ...
                </p:menu>
        </p:overlayPanel>
    </p:treenode>
</p:tree>

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-15 16:39:56

编辑的

在ajax调用请求时隐藏菜单项,并在完成时显示它们。页面中的源代码是:

代码语言:javascript
复制
<p:tree id="tree" value="#{bean.root}" var="node" selectionMode="checkbox">
    <p:treeNode id="treenode">
        <p:commandButton id="btn" value="#{node}"
                 onstart="$('.ui-overlaypanel-content').css('display','none');" 
                 oncomplete="$('.ui-overlaypanel-content').css('display','block');"
                 actionListener="#{bean.processAndUpdateConditions}" update="mymenu"/>
        <p:overlayPanel for="btn">
            <p:menu id="mymenu" >
                <p:menuitem  value="Condition 1" disabled="#{bean.condition1}" />
                <p:menuitem value="Condition 2" disabled="#{bean.condition2}" />
            </p:menu>
        </p:overlayPanel>
    </p:treeNode>
</p:tree>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33145552

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档