我需要一个rich:popup
显示的rich:extendedDataTable
,当用户按下按钮时,popup
应该显示,并且extendedDataTable
必须重新渲染,这里是代码:
<rich:popupPanel id="popupId" show="false" modal="true">
<h:form>
<rich:extendedDataTable
value="#{bean.list}"
var="item" rows="5" id="table">
<rich:column>
<h:outputLabel value="#{item}" />
</rich:column>
</rich:extendedDataTable>
<a4j:commandButton value="x" immediate="true"
oncomplete="#{rich:component('popupId')}.hide(); return false;"/>
</h:form>
</rich:popupPanel>
<h:form>
<a4j:commandButton value="show"
oncomplete="#{rich:component('popupId')}.show(); return false;"
render="table" immediate="true" />
</h:form>
我第一次按下show
它工作正常,但是当我用按钮关闭面板X
并再次按下show
按钮时,extendedDataTable
显示为空(它已呈现但显示为空,见下图)。
如果我在extendedDataTable
之前添加一个空白,问题就解决了popup
,如下所示:
<rich:extendedDataTable />
<rich:popupPanel>
...
rich:dataTable
问题不存在,但我需要一个extendedDataTable
.
并且额外的异常行为是当我调整浏览器大小时,数据会出现。
平台
- RichFaces:4.2.2.Final
- 春天:3.1.1.RELEASE
干杯