Primefaces 数据表在页面上重复
我的应用程序中有评论(用于添加评论或评论)组件。
添加评论时,p:dataTable
会使用 ajax 进行更新。
添加评论之前:
添加第一条评论后
刷新页面(F5):
添加第二次评论后:
jsf:
<h:form onsubmit="return commValidator();">
<h:inputText value="#{comment.commentator}"/>
<h:inputTextarea value="#{comment.body}";"/>
<p:commandButton value="send" action="#{showProducts.addComment}" update="comms"/>
<p:dataTable id="comms" value="#{showProducts.comments}" var="com">
<p:column>#{com.commentator}(
<h:outputText value="#{com.postDate}">
</h:outputText>):
</p:column>
<p:column>#{com.body}</p:column>
</p:dataTable>
</h:form>
问题是 p:dataTable
组件在页面上显示两次。
添加新评论后,将显示新创建的p:dataTable
。
如何让p:dataTable
在进入页面后就显示一次?
谢谢。
Have review(for adding review or comments) component in my application.
When add review, that p:dataTable
is updated with ajax.
before adding review:
after adding first review
refresh page(F5):
after adding second review:
jsf:
<h:form onsubmit="return commValidator();">
<h:inputText value="#{comment.commentator}"/>
<h:inputTextarea value="#{comment.body}";"/>
<p:commandButton value="send" action="#{showProducts.addComment}" update="comms"/>
<p:dataTable id="comms" value="#{showProducts.comments}" var="com">
<p:column>#{com.commentator}(
<h:outputText value="#{com.postDate}">
</h:outputText>):
</p:column>
<p:column>#{com.body}</p:column>
</p:dataTable>
</h:form>
The problem is p:dataTable
component is displayed twice on page.
After new review been added, that newly created p:dataTable
displayed.
How to make p:dataTable
displayed already after go to page and once time?
Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
p:dataList
组件解决了这个问题它显示了和新的 elem。添加到已有的列表中,而不是像
p:dataTable
那样创建新的列表!论坛
p:dataList
component resolves this problemIt displays ones and new elem. is added to already existing list instead of creating new one list as with
p:dataTable
!forum
我遇到了同样的问题:每次进行 update(:form) 时,表单内的 p:dataTable 都会重复。
解决该问题的一种可能性是将 ap:outputPanel 作为包含所有其他元素的表单内的主要元素。
当简单地执行 update(:form:outputpanel) 时,表会更新但不再重复。
I encountered the same problem: p:dataTable inside form is duplicated, each time an update(:form) is made.
One possibility to solve the problem is to put a p:outputPanel as major element inside the form which contains all other elements.
When simply doing an update(:form:outputpanel) the table is update BUT not duplicated anymore.