【发布时间】:2018-04-19 19:30:20
【问题描述】:
我有一个对话框,当用户按下“接受”按钮时,我想在同一个对话框中显示一个 ProgressBar,但它会在 actionListener 完成时更新。
<p:dialog id="dlgGenerarLista" modal="true" height="180" width="500" header="Generar Lista de Trabajo" widgetVar="dlgGenerarLista">
<p:commandButton onclick="PF('dlgGenerarLista').hide();" value="Cancel" />
<p:commandButton id="btnAceptarGenerar" value="Accept"
actionListener="#{crearEstrategiaBeans.GenerarListaTrabajo}"
oncomplete="PF('dlgGenerarLista').hide();"update="basic"/>
<p:panel id="basic" widgetVar="basic">
<p:progressBar rendered="#{crearEstrategiaBeans.visibilidadBarraProgreso}" id="progressBarIndeterminate" mode="indeterminate"/>
</p:panel>
</p:dialog>
在方法 GenerarListaTrabajo() 我说 visibilidadBarraProgreso = "true" ,所以我希望在那一刻它显示进度条。它在所有过程完成时显示的进度条。
【问题讨论】:
-
抱歉,我很难理解您的问题。这可能是由于我不是以英语为母语的人造成的。还要靠你的英语。也许你可以使用谷歌翻译之类的东西来把事情弄清楚。
-
@Kukeltje "我有一个对话框,它有一个渲染为 false 的进度条,当我按下 OK 按钮时,我将状态更改为 true 以显示它,但它仅在 actionListener 为完成,我希望它在按下的那一刻显示出来。”
-
uhhh....如果progressbar 的rendered 属性为false,并且您只在命令按钮的update 属性中更新周围的面板,这正是您告诉它要做的事情。不要使用渲染属性,而是使用一些 css 使其可见。
-
@Kukeltje 但是在 actionListener 的方法中,我将进度条的属性更改为 true,但我理解你用 CSS 说的话。我试试,谢谢:)
-
更新总是在动作/监听器之后处理。这就是它的工作原理。它在执行期间无法更新。
标签: jsf primefaces xhtml