嗨,我正在使用带有 Primefaces 的 JSF。我有一个很长的任务,在此期间我想向用户显示一个进度条,以进度(int)和状态(String)作为指示器。这两个参数映射到后端 bean 的两个字段。如果我使用<p:poll>
,我可以同时更新两者,如以下代码所示:
<p:progressBar id="progress" ajax="false" value="#{backendBean.progress}" widgetVar="pbAjax"
labelTemplate="{value}%: #{backendBean.statusMessage}" style="width:400px; font-size:12px"/>
<p:poll interval="1" id="poll" autoStart="false" update="progress" widgetVar="pbPoll"/>
一旦用户按下按钮,pbPoll.start()
. 这工作正常。现在我有两个问题:
(1) 最初是否可以隐藏进度条?我知道我可以将 display:none 放在 css 中,并在单击按钮时让它显示出来。但是投票更新会再次隐藏进度条。也许使用渲染。如果是这样,请告诉我如何。
(2) 由于 progressBar 本身具有 ajax 功能,我可以不使用 poll 吗?请注意,我在上面的代码中设置了 ajax=false。在他们的网站上,它说添加了“动态进度标签”。我试过但不知何故标签只显示"{value}%"
没有状态消息。我想知道这是否是因为#{statusMessage}
需要另一个提取,因此被忽略,而两者都是在民意调查中检索的。
感谢!