3

我正在使用带有单元内编辑的 primefaces 3.4.2 数据表。我想在调用编辑事件方法后,要更新数据表本身。我是这样做的:

<p:dataTable id="timeTable" var="log" value="#{reviewTimesheetBean.lazyModel}" paginator="true"
                            paginatorTemplate="{FirstPageLink} {PreviousPageLink} {CurrentPageReport} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}" rowsPerPageTemplate="15,30,45,60"
                            paginatorPosition="bottom" rows="2" currentPageReportTemplate="{currentPage} de {totalPages}" lazy="true" editable="true" emptyMessage="#{label['empty.message']}">

  <p:ajax event="rowEdit" listener="#{reviewTimesheetBean.onEdit}" update="timeTable" />
   <p:ajax event="rowEditCancel" listener="#{reviewTimesheetBean.onCancel}" update="timeTable" />
....
</p:datatable>

但是在 rowEdit 事件之后永远不会调用 load 方法。我也尝试使用选择器,但它也不起作用。不能以这种方式更新数据表吗?

谢谢

凯利

4

1 回答 1

0

你试过remoteCommand吗?

<p:remoteCommand name="onCellEdit" action="#{bean.init}" update="formId" ignoreAutoUpdate="true" />

然后在您的数据表中:

<p:ajax event="cellEdit" oncomplete="onCellEdit()" listener="#{bean.onCellEdit}" />

PS。remoteCommand 就在数据表的上方……不确定这是否有任何影响。

请注意,onComplete 值必须与远程命令的名称匹配。

于 2014-02-17T16:00:17.660 回答