JSF Prime表格中有两个可编辑的数据表

时间:2014-04-04 14:06:30

标签: jsf jsf-2 primefaces

我在表单中有两个可编辑的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" />

但是这些事件处理程序没有按预期工作。即使我编辑了第一个表行,它也调用了第二个表的事件处理程序。

你知道这个的原因吗?

1 个答案:

答案 0 :(得分: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>