1

如何在任何 f:ajax 操作之前显示对话框。我有如下代码:

    <h:commandButton  value="Create Project" styleClass="greyishBtn submitForm" action="#{projectController.delete}">
          <f:ajax execute="@form"  onevent="function(data) {createProjectEventHandler(data);}" render=":tblProject txtNewProjectName txtNewProjectStartDate taNewProjectDesc"/>
    </h:commandButton>

此代码工作正常,但在调用删除操作之前我需要一个确认对话框,我尝试了 onevent,但它只有开始、成功和完成事件,我需要的是在“开始”事件之前确认对话框。

任何的想法?

提前致谢。

4

1 回答 1

4

onclick="return false"在 ajax 甚至开始之前,您可以取消它(ajax)或通过使用本身来取消它(ajax)或提交操作<h:commandButton本身......

所以使用 jsconfirm("Delete?")对话框的最简单方法是onclick

<h:commandButton  onclick="return confirm('Delete?');" value="Create Project" styleClass="greyishBtn submitForm" action="#{projectController.delete}">
    <f:ajax execute="@form"  onevent="function(data) {createProjectEventHandler(data);}" render=":tblProject txtNewProjectName txtNewProjectStartDate taNewProjectDesc"/>
</h:commandButton>

可以在此处找到更高级的方法jQuery UI 确认对话框不返回 true/false它使用带有 JSF 的 jQuery 对话框

于 2012-12-10T08:11:16.200 回答