简体   繁体   English

RICH:dataTable-删除行后刷新页面

[英]RICH:dataTable - refresh page after delete row

I have rich datatable with delete button: 我有删除按钮丰富的数据表:

在此输入图像描述

When I delete the row, row is really deleted in database, but still remains in dataTable. 当我删除该行时,该行实际上已在数据库中删除,但仍保留在dataTable中。 It dissapear after reload page or reload dataTable. 重新加载页面或重新加载dataTable后消失。

part of dataTable code: dataTable代码的一部分:

<rich:extendedDataTable 
  value="#{myBdeCheck.dataListBde}"
  var="bdeItem">

 <rich:column width="60px">
  <f:facet name="header">
     <h:outputText value="Kusy" />
  </f:facet>
  <h:outputText value="#{bdeItem.prodPcs}" rendered="#{!myBdeCheck.editMode}"/>
  <h:inputText value="#{bdeItem.prodPcs}" rendered="#{myBdeCheck.editMode}"/>
 </rich:column>

 <rich:column width="50px">
  <h:commandLink action="#{myBdeCheck.deleteBde}">
    <h:graphicImage value="/images/icons/delete.png" alt="edit"/>
    <a4j:param value="#{it.index}" assignTo="#{myBdeCheck.currentIndexDetail}" />
    <f:setPropertyActionListener target="#{myBdeCheck.BDEItem}" value="#{bdeItem}" />
  </h:commandLink>
 </rich:column>
</rich:extendedDataTable>

and part of myBdeCheck bean: 以及myBdeCheck bean的一部分:

private int currentIndexDetail; // with getters, setters
private BDE BDEItem;

public void deleteBde()
{
  try 
  { 
    DaoCrud.delete(BDEItem, 'R');
  } 
  catch{.....}
}

How can I make dataTable to refresh automatically after click the delete button? 单击删除按钮后,如何使dataTable自动刷新?

You need to rerender the datatable after action is performed 你需要rerender在数据表上进行操作后,

<h:commandLink action="#{myBdeCheck.deleteBde}" reRender="idOfYourDataTable">

Check this for more info.. 检查以获取更多信息。

you need to reRender table after deleting. 您需要在删除后重新reRender表。

<rich:extendedDataTable 
  value="#{myBdeCheck.dataListBde}"
  var="bdeItem" id="myTable">

and

<h:commandLink action="#{myBdeCheck.deleteBde}" reRender="myTable">

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM