Jsf 2 Primefaces,当我将组件放到仪表板上时,我想触发操作
我使用的是Primefaces 5.1,我有一个仪表板,可以在上面放置组件 但是,当我把一个组件放在上面时,我希望渲染一个不同的组件 这是我的仪表板,以及克隆并放到仪表板上的面板组件Jsf 2 Primefaces,当我将组件放到仪表板上时,我想触发操作,jsf-2,primefaces,Jsf 2,Primefaces,我使用的是Primefaces 5.1,我有一个仪表板,可以在上面放置组件 但是,当我把一个组件放在上面时,我希望渲染一个不同的组件 这是我的仪表板,以及克隆并放到仪表板上的面板组件 <p:dashboard id="board" model="#{dashboardBean.model}" binding="#{dashboardBean.dashboard}"> <p:ajax event="reorder" listener="#{dashboardBe
<p:dashboard id="board" model="#{dashboardBean.model}" binding="#{dashboardBean.dashboard}">
<p:ajax event="reorder" listener="#{dashboardBean.handleReorder}" update="msgs" />
</p:dashboard>
<p:panel id="draggable">
<h:outputLabel value="Drag Panel Into Dashboard"></h:outputLabel>
</p:panel>
<p:draggable for="draggable" helper="clone" dashboard="board"/>
现在,我可以触发捕获“reorder”事件并更改“model”以在java端用正确的组件替换它。但此时仪表板不会重新渲染
我可以添加一个命令按钮来触发重新渲染
<h:commandButton value="Refresh" action="#{dashboardManagedBean.refreshChart}"/>
但我希望这能自动发生
谁能给点建议吗
(将评论升级为答案)
如果您使用此RequestContext.getCurrentInstance().update(“foo:bar”)
从handleOrder()
引用组件会怎么样?(注释升级为答案)
如果使用此RequestContext.getCurrentInstance().update(“foo:bar”)
从handleOrder()
引用组件,该怎么办