Primefaces dataTable在页面上重复

时间:2011-01-24 15:57:54

标签: datatable jsf-2 primefaces duplication

在我的申请中审核(用于添加评论或评论)组件 添加评论时,p:dataTable会更新为ajax。

添加评论前


enter image description here
添加第一次审核后
enter image description here
刷新页面(F5):
enter image description here
添加第二次审核后
enter image description here

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一次?

感谢。

2 个答案:

答案 0 :(得分:0)

p:dataList组件解决了这个问题

显示一个元素和新元素。已添加到现有列表,而不是像p:dataTable一样创建新列表!

forum

答案 1 :(得分:0)

我遇到了同样的问题:p:每次进行更新(:表单)时,表单内的dataTable都是重复的。

解决问题的一种可能性是将p:outputPanel作为包含所有其他元素的表单内的主要元素。 当简单地进行更新(:form:outputpanel)时,表是更新但不再重复。