【问题标题】:Primefaces Extensions BlockUI in DialogPrimefaces Extensions BlockUI 在对话框中
【发布时间】:2021-09-18 00:52:44
【问题描述】:

Primefaces 7.0、primefaces-extensions 7.0.2、JSF 2.1.19

你好,

我想将 pe:blockUI 用于 p:dialog,但我发现我不能使用我在整个应用程序中使用的“正常”外部 blockUI,因为它不会阻止对话框,因此用户可以单击随机内容在ajax请求期间。所以我在对话框中使用了一个单独的 blockUI 元素来阻止对话框输入。

这是可行的,我唯一的问题是他的 blockUI 消息部分(“请稍候”)应该没有任何替换(因为一般的 blockUI 消息工作正常,两个太多了)。

如何做到这一点?

    <p:dialog id="antragKoopUserSearch" widgetVar="antragKoopUserSearch" height="555" width="830" modal="true" closable="true">
    <f:facet name="header">Benutzer suchen zum Weitergeben</f:facet>
    <h:form id="modalPanelForm">
        <pe:blockUI id="buiModal" widgetVar="buiModal" target="antragKoopUserSearch" />
        <p:ajaxStatus id="antragKoopUserSearchStatus" onstart="PF('buiModal').block();" oncomplete="PF('buiModal').unblock();" />

谢谢

【问题讨论】:

  • 请贴一些代码我不知道你在做什么?
  • 你好@Melloware 我添加了一些代码。我想要的是阻止对话框(正在工作),中间没有消息“请稍候......”,因为我已经有来自另一个 blockUI 组件的阻止消息。为什么我使用 2 个 blockUI 组件?因为我的默认 blockUI 组件无法阻止对话框,所以我必须在对话框中放入一个 blockUI 组件来阻止它。但我不希望中间出现“请稍候..”消息...
  • 这有点像XY problem。相反,您可以问为什么您的“正常” blockUI 不阻止对话框并修复它。没有看到你的标记很难判断,但你可能需要指定更高的z-index 来阻止覆盖。
  • @AndeHofer,不过是关于 p:blockUI,而不是 pe:blockUI。它已经过时了。我在我的应用程序中使用 pe:blockUI 来阻止包括对话框在内的所有内容,它工作正常。尝试这样的样式:.blockUI { z-index: 2000 !important; } .blockOverlay { z-index: 2001 !important; } .blockMsg { z-index: 2010 !important; }.
  • @Vsevolod Golovanov,工作!!!太棒了,我只是惊呆了。

标签: primefaces jsf-2 primefaces-extensions blockui


【解决方案1】:

你可以这样隐藏它:

<pe:blockUI css="{opacity: 0}">
    asd
</pe:blockUI>

你确实需要那个“asd”,或者至少需要一些东西,否则它将无法工作,至少在我的 6.1.1 版本上是这样。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-10
    • 1970-01-01
    • 2017-06-04
    • 2016-10-26
    • 1970-01-01
    相关资源
    最近更新 更多