簡體   English   中英

Primefaces內聯數據表刪除功能

[英]Primefaces Inline DataTable Delete functionality

我正在使用primefaces內聯編輯數據表。它由primefaces RowEditor和CommandButton組成以刪除記錄。我的問題是當我從數據庫中刪除任何記錄時,該行已成功刪除,並且當我單擊時顯示已刪除的記錄單擊編輯按鈕來編輯下一條記錄。此編輯問題將繼續所有記錄。它會在h:outputText中顯示當前值,而在h:inputText中顯示舊值,這是我們單擊編輯按鈕時出現的。 有人可以幫我嗎? 謝謝你們。

<p:dataTable>組件上記錄了很多Primefaces錯誤,因此我將不搜索所有這些錯誤。

我確實知道,但是從Primefaces 2.2.1開始有一個打開的錯誤,指出<p:dataTable>的一行中的組件將無法正確更新(刷新)dataTable中的適當值。 此問題可以在Primefaces 3.0中修復。 如果您有興趣,可以在此處搜索已知的錯誤。

幸運的是,我已經找到了解決方法。 您需要從<p:dataTable>的組件OUTSIDE執行異步操作,並確保該組件在其update屬性中設置了dataTable的ID。

<h:form id="form1">
  <p:commandButton widgetVar="updateButton" update="form1:table1" ... />
  <p:dataTable id="table1" ...>
    <p:column ...>
      <p:commandButton id="deleteButton" action="#{managedBean.doDelete}" oncomplete="javascriptFunction();" ... />
    </p:column>
  </p:dataTable>
</h:form>

並在javascript中:

function javascriptFunction() {
  updateButton.jq.click();
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM