2014-04-04 43 views
0

我在表單中有兩個可編輯的primefaces數據表。JSF Primefaces兩個可編輯的數據表格

這是第一個數據表中的編輯和取消事件處理程序。

<p:ajax event="rowEdit" listener="#{myBean.onEdit1}" update=":myForm:messages" /> 
<p:ajax event="rowEditCancel" listener="#{myBean.onCancel1}" update=":myForm:messages" /> 

這是第二個數據表中的編輯和取消事件處理程序。

<p:ajax event="rowEdit" listener="#{myBean.onEdit2}" update=":myForm:messages" /> 
<p:ajax event="rowEditCancel" listener="#{myBean.onCancel2}" update=":myForm:messages" /> 

但是,這些事件處理程序不能按預期方式工作。即使我編輯第一個表格行,它調用第二個表格的事件處理程序。

你知道這個的原因嗎?

回答

0

我不知道自定義事件名稱。但我認爲這是因爲你有兩個表的相同的事件名稱。你已經用第二張表替換/修改了rowEdit事件。像其他語言一樣,只有您的最新修改纔會被計入。 你知道嗎<p:inplace>?我建議你使用它來編輯數據。

<h:outputText value="Ajax Inplace Editor: " /> 
<p:inplace id="ajaxInplace" editor="true"> 
      <p:inputText value="#{inplaceBean.text}" 
         required="true" label="text"/> 
     </p:inplace> 
+0

但是,這些事件處理程序在相應的表中。所以它應該適用於每個表格的編輯權利? – Ani

+0

不確定,因爲我從來不接觸自定義事件名稱的區域。你爲什麼不嘗試重命名它,看看會發生什麼。 – Will

相關問題