gpt4 book ai didi

javascript - 使用 p :commandButton 意外刷新整个页面

转载 作者:行者123 更新时间:2023-11-28 18:40:16 27 4
gpt4 key购买 nike

我正在使用下面的代码删除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>

最佳答案

如果您将 onclick 属性改写为
if (!confirm('您确定要删除这条记录吗?')) return false;
那么它应该按预期工作。它的作用是:

  • 如果用户确认不返回值,PrimeFaces 可以进一步处理 AJAX 请求
  • 如果用户取消确认,则返回值为 false 并且进一步处理将中止。

如果您只是执行返回确认('您确定吗?')并且用户确定,则返回的true值会取消添加的PrimeFacesreturn false code> 位于 onclick 属性末尾(它针对 ajax 执行此操作),您看到的不是 ajax 请求,而是正常的帖子提交(页面重新加载)。
return false cancels default behavior of html elements .

关于javascript - 使用 p :commandButton 意外刷新整个页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36219027/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com