我使用下面的代码删除p:datatable
中的行。如果我在p:commandbutton
标签内使用onclick方法,则刷新整个页面,否则其工作正常。请给我一些解决方案。
<p:commandButton title="Delete Affiliation" immediate="true" process="@this"
update="affiliationList" alt="Delete Affiliation" icon="ui-icon-trash"
action="#{readAuthorDetailsbean.deleteSelectedAffiliation}" style="width:30px"
onclick="return confirm('Are you sure, Do you want to delete this record?');">
<f:setPropertyActionListener value="#{affiliation}"
target="#{readAuthorDetailsbean.selectedAffilliationListAL}" />
</p:commandButton>
答案 0 :(得分:3)
如果您将onclick
属性改为
if (!confirm('Are you sure, Do you want to delete this record?')) return false;
然后它应该按预期工作。它的作用是:
false
,并且中止进一步处理。如果您只是return confirm('Are you sure?')
并且用户确定,则返回的true
值会取消在return false
属性末尾添加的onclick
的PrimeFaces(它为ajax执行此操作) )而不是ajax请求,你看到正常的帖子提交(页面重新加载)
return false
cancels default behavior of html elements