【问题标题】:How to target entire JSF page to be blocked by p:blockUI / pe:blockUI?如何定位整个 JSF 页面被 p:blockUI / pe:blockUI 阻止?
【发布时间】:2013-12-10 12:33:08
【问题描述】:

该示例演示了<pe:blockUI><h:form> 的阻止。

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

这会阻止&lt;h:form&gt;,但有一个模板带有标题和左侧栏,这样做不会被阻止。

我试图在模板页面上阻止&lt;h:body id="body"&gt; &lt;pe:blockUI target="body"...,但没有成功,并以异常结束,“无法在视图中找到具有 id 正文的组件。

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

虽然我使用的是PrimeFaces extension&lt;pe:blockUI&gt;,但PrimeFaces的&lt;p:blockUI&gt;也可以证明同样的事情

【问题讨论】:

  • 我有一个和你一样的问题,基本上是一页有一个按钮,这个按钮有一个到第2页的链接。如何在第2页加载期间锁定第1页?我创建了这个问题stackoverflow.com/q/26304582/3703397

标签: jsf primefaces jsf-2.2 blockui primefaces-extensions


【解决方案1】:

为你的 body 提供一个 id,然后在 &lt;p:blockUI&gt; 组件的 block 参数上引用它。

例子:

<h:body id="entirePage"/>

<p:blockUI id="blockUI" widgetVar="blockBodyUIWidget" block=":entirePage"/>

【讨论】:

  • 哦,是的!我忘记在&lt;pe:blockUI&gt; 的目标属性中的id 之前添加前缀:,确实,对不起。应该是target=":body"。谢谢。
  • 我有一个和你一样的问题,基本上只有一个页面一个按钮,这个按钮有一个到页面2的链接。如何在页面2加载期间锁定页面1?
猜你喜欢
  • 2014-12-05
  • 1970-01-01
  • 2010-10-18
  • 1970-01-01
  • 1970-01-01
  • 2014-02-05
  • 2022-07-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多