加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

在ajax更新后,Primefaces blockUI停止工作

发布时间:2020-12-16 03:07:58 所属栏目:百科 来源:网络整理
导读:我正在尝试创建一个在忙碌时显示blockUI的数据表,而且我大部分都是成功的.现在,当我单击两个commandButtons中的任何一个时,它会变灰并显示“正在加载…”,通过单击标题对数据表进行排序,或者通过数据表进行分页.您可以在下面看到它的代码. 问题是在我使用了c
我正在尝试创建一个在忙碌时显示blockUI的数据表,而且我大部分都是成功的.现在,当我单击两个commandButtons中的任何一个时,它会变灰并显示“正在加载…”,通过单击标题对数据表进行排序,或者通过数据表进行分页.您可以在下面看到它的代码.

问题是在我使用了commandButtons之一(在被阻止元素上运行ajax更新)后,后续操作不会触发blockUI(直到我刷新页面).例如:

>加载页面
>单击数据表标题 – 出现blockUI直到表完成排序
>单击其中一个数据表页面导航按钮 – 将显示blockUI,直到加载页面
>单击commandButtons之一 – 出现blockUI,直到按钮的actionListener完成
>单击数据表标题 – 表排序,但不显示blockUI.
>单击其中一个数据表页面导航按钮 – 页面加载,但不显示blockUI
>单击commandButtons之一 – actionListener运行和表更新,但不显示blockUI
>重新加载页面 – 一切正常

将commandButtons的update =“”属性更改为ajax =“false”会导致排序/分页始终显示blockUI,但commandButtons始终不显示blockUI.

有任何想法吗?

<div class="buttonDiv">
    <p:commandButton ... update="resultsPanel" id="submitButton" ... />
    ...
    <p:commandButton ... update="resultsPanel" id="resetScenarioButton" ... />
</div>
<p:panel header="Results Grid" id="resultsPanel">
    ...
    <p:dataTable ... id="VAResults" ... >
        ...
    </p:dataTable>
    ....
</p:panel>
<p:blockUI block="resultsPanel" trigger="submitButton,resetScenarioButton,VAResults">
    Loading...
</p:blockUI>
trigger属性绑定指定元素上的jQuery侦听器.但是,如果更新元素,则绑定会丢失.我不知道它是否有效,但您可以尝试在resultsPanel中移动< p:blockUI.我怀疑当你更新面板时,blockUI也会更新,从而将监听器重新绑定到数据表.
<p:panel header="Results Grid" id="resultsPanel">
    ...
    <p:dataTable ... id="VAResults" ... >
        ...
    </p:dataTable>
    ....
    <p:blockUI block="resultsPanel" trigger="submitButton,VAResults">
    Loading...
</p:blockUI>
</p:panel>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读