Javascript 使用p:commandButton进行意外的整页刷新
我正在使用下面的代码删除Javascript 使用p:commandButton进行意外的整页刷新,javascript,jsf,primefaces,Javascript,Jsf,Primefaces,我正在使用下面的代码删除p:datatable中的行。如果我在p:commandbuttontag中使用onclick方法,则刷新整个页面,否则工作正常。请给我一些解决办法 <p:commandButton title="Delete Affiliation" immediate="true" process="@this" update="affiliationList" alt="Delete Affiliation" icon="ui-icon-trash" acti
p:datatable
中的行。如果我在p:commandbutton
tag中使用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属性改为
如果(!confirm('您确定要删除此记录吗?'))返回false代码>
那么它应该像预期的那样工作。它所做的是:
- 若用户确认它并没有返回值,PrimeFaces可以进一步处理AJAX请求
- 如果用户取消确认,则返回值为
false
,并中止进一步处理
如果您只是执行返回确认('you sure?')
并且用户确定,则返回的true
值将取消在onclick
属性末尾添加的return false
(它对ajax执行此操作)而不是ajax请求,您将看到正常的提交后(页面重新加载)。
.这个javascript或jquery是如何关联的?你想让我们如何繁殖?请出示证件。很可能您从actionView完整代码中返回了一些内容。我添加了onclick(Java脚本函数)。当我在删除确认中单击“是”时,返回true。刷新整个页面。默认情况下PrimeFaces添加返回false
(因为ajax)从p:commandButton
组件生成html代码,这样它就不会触发表单提交。如果将confirm()
添加到onclick
中,则在用户单击“确定”后,返回值为true
,表单提交发生(正常提交后,而不是ajax-因此页面刷新)。你可以试试。这在即将发布的6.0版本中得到了修复(很可能也是5.3.x版本)。看见