我正在使用带有单元内编辑的primefaces 3.4.2数据表。我想在调用edit事件方法之后,要更新数据表本身。我是这样做的:
<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方法。我也试过使用选择器,但它也没有用。数据表不能以这种方式更新吗?
由于
凯利
答案 0 :(得分: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值必须与远程命令的名称匹配。