Primefaces仅阻止组件一次

时间:2012-04-28 13:09:53

标签: java jsf primefaces

我需要在通过ajax更新时阻止数据表。我使用了blockUI组件,它是show()和hide()方法。但它只工作一次!哪里可以问题?感谢帮助。 以下是代码的一部分:

<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"/>

1 个答案:

答案 0 :(得分:1)

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

并从feedBlock.show()

中删除feedBlock.hide()p:ajax

您可能需要将trigger="source"更改为trigger="myform:source"等...