我创建了一个每行都有一个删除按钮的组件。单击删除按钮时,将调用确认对话框,并在对话框上单击“是”时,将删除该行。
表格刷新,但在 UI 上删除了错误的行。在 bean 上,正确的记录被删除。在 UI 方面,无论您选择删除哪一行,删除的行始终是最后一行。
Delete 按钮位于数据表本身中,confirmDialog 位于数据表之外但在同一个表单中。
有人知道出了什么问题吗?
<p:commandButton icon="ui-icon ui-icon-trash"
update="@form"
oncomplete="del_confirmation.show()"
value="Delete"
immediate="true">
<f:setPropertyActionListener value="#{item}"
target="#{Bean.recToDelete}"/>
</p:commandButton>
<p:confirmDialog widgetVar="del_confirmation"
message="Confirm Delete?"
header="Delete Dialog" showEffect="explode"
hideEffect="explode" modal="true">
<div align="center">
<p:commandButton id="delBtn"
icon="ui-icon ui-icon-check"
value="Yes"
actionListener="#{Bean.deleteRecord()}"
update="@form"
oncomplete="del_confirmation.hide()"
immediate="true"
ajax="true" />
<p:commandButton
icon="ui-icon ui-icon-cancel"
value="No"
onclick="del_confirmation.hide()" />
</div></p:confirmDialog>