6

该示例演示了<h:form>by 的阻塞<pe:blockUI>

<h:form id="form" prependId="true">
    <pe:blockUI target="form" widgetVar="blockBodyUIWidget">
        <h:panelGrid columns="2">
            <h:graphicImage library="default" name="images/ajax-loader1.gif" class="block-ui-image"/>
            <h:outputText value="#{messages['blockui.panel.message']}" class="block-ui-text"/>
        </h:panelGrid>
    </pe:blockUI>

<p:commandButton id="btnSubmit" 
                 onstart="PF('blockBodyUIWidget').block()" 
                 oncomplete="PF('blockBodyUIWidget').unblock();}" 
                 update=":form:dataGrid" actionListener="#{bean.listener}" 
                 icon="ui-icon-check" 
                 value="Save">
</h:form>

这会阻塞<h:form>,但有一个带有标题和左侧栏的模板,这样做不会被阻塞。

我试图<h:body id="body"> <pe:blockUI target="body"...在模板页面上进行阻止,但没有成功,并以异常指示结束,“在视图中找不到具有 id 正文的组件。

那么,如何定位整个页面呢?

虽然我使用<pe:blockUI>的是PrimeFaces 扩展<p:blockUI>,但PrimeFaces可以证明同样的事情

4

1 回答 1

19

给你的 body 一个 id,然后block在组件的参数上引用它<p:blockUI>

例子:

<h:body id="entirePage"/>

<p:blockUI id="blockUI" widgetVar="blockBodyUIWidget" block=":entirePage"/>
于 2013-11-28T11:07:53.940 回答