简体   繁体   English

Primefaces仅阻止一次组件

[英]Primefaces blocks component only once

I need to block datatable when it's updating via ajax. 通过ajax更新时,我需要阻止数据表。 I used blockUI component and it's show() and hide() methods. 我使用了blockUI组件,它是show()和hide()方法。 But it works only once! 但是它只能工作一次! Where can be the problem? 问题出在哪里? Thanks for help. 感谢帮助。 Here is part of code: 这是代码的一部分:

<p:dialog resizable="false" showHeader="false" modal="false"
          widgetVar="statusDialog" draggable="false" closable="false">
  ...
</p:dialog>
<p:panel>
 <p:selectOneMenu id="source" value="#{mainBean.selectedSource}">
   ....
   <p:ajax onstart="statusDialog.show(); feedBlock.show()" 
           oncomplete="statusDialog.hide(); feedBlock.hide()" 
           update="feed" listener="#{mainBean.filter(selectedSource, false)}"/>
 </p:selectOneMenu>
</p:panel>
...
<p:dataTable id="feed" scrollable="true" scrollHeight="460" 
             value="#{mainBean.feed}" var="curr">
  ...
</p:dataTable>
<p:blockUI block="feed" widgetVar="feedBlock"/>

try 尝试

<p:blockUI block="feed" trigger="source"/>

and remove feedBlock.show() and feedBlock.hide() from p:ajax 并从p:ajax删除feedBlock.show()feedBlock.hide()

you might need to change trigger="source" into trigger="myform:source" etc... 您可能需要将trigger="source"更改为trigger="myform:source"等。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM