You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle Apex需求:点击Deactivate按钮时不关闭对话框

解决Dialog中Deactivate按钮点击后不关闭的问题

问题背景

我有一个带三个按钮的弹出对话框:Update、Update to null、Deactivate。原本三个按钮点击后都会关闭对话框:

  • Update:提交文本项到表格后关闭
  • Update to null:将项值设为null后关闭
  • Deactivate:把:P1_Checkbox设为'N'(停用复选框)后关闭

现在要求只有Update和Update to null点击后关闭对话框,Deactivate点击后保持对话框打开。当前Deactivate按钮属性如下:

Action: Submit Page
Execute Validations: yes

处理流程末尾还有统一的“关闭对话框”步骤。

具体解决方案

1. 给“关闭对话框”步骤加条件判断

直接修改流程里的“关闭对话框”步骤,只让它在点击Update或Update to null时执行:

  • 找到这个步骤的服务器端条件,设置为:
    :REQUEST = 'UPDATE_BUTTON_NAME' OR :REQUEST = 'UPDATE_NULL_BUTTON_NAME'
    
    注意把UPDATE_BUTTON_NAME和UPDATE_NULL_BUTTON_NAME换成对应按钮实际的Name属性值(APEX里按钮的Name会作为:REQUEST的值传递)。

2. 检查按钮的客户端行为(可选)

如果调整流程后Deactivate还是会关对话框,检查按钮的客户端设置:

  • 看看Deactivate按钮有没有勾选类似Close Dialog的属性(部分对话框组件会自带这个选项),如果有就取消勾选
  • 要是按钮绑定了动态动作,找到点击事件里的关闭对话框动作,给它加条件:排除Deactivate按钮的请求

核心逻辑

利用:REQUEST变量识别当前触发提交的按钮,只让指定按钮触发关闭对话框的操作,Deactivate的流程只执行设置:P1_Checkbox为'N'的逻辑,不执行关闭步骤。

内容的提问来源于stack exchange,提问作者Velocity

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 15:32:21