我将RichFaces3.3.1与JSFRe1.2和Facelets结合使用。
我对Rich:DataTable与Rich:DataScroller的HTML生成有一个奇怪的问题。
<h:form id="br">
...
<rich:datascroller id="scrt" page="#{searchBookings.page}" stepControls="hide" renderIfSinglePage="false" for="bt" align="left" reRender="ttips,bt"/>
<rich:dataTable id="bt" rows="20" rendered="#{!empty searchBookings.bookings}" value="#{searchBookings.bookings}" var="row" binding="#{searchBookings.table}">
....
第一次加载页面时,一切都运行良好。如果我第二次访问同一个页面,通过数据滚动器更改页面将不再刷新数据表。点击刷新按钮解决了这个问题。
添加A4J:Log显示此警告:
warn[14:50:07,259]: Node for replace by response with id br:bt not found in document
实际上,在检查HTML时,“正确”页面如下所示:
<table class="dr-table rich-table " id="br:bt" ....
而“坏”页面看起来是这样的:
<table class="dr-table rich-table " id="br:bt:0" ....
注意ID末尾的“:0”,它不应该在那里。是什么导致的?
谢谢你的意见。