【发布时间】: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