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

Oracle APEX:如何调整apex_application.g_print_success_message的显示位置?

调整Oracle APEX成功消息显示位置的方法

你可以通过以下几种方式调整apex_application.g_print_success_message生成的成功消息位置:

方法一:用CSS覆盖默认样式

APEX的页面消息默认放在.t-Body-alerts容器里,通过自定义CSS可以直接修改它的定位。

  1. 打开页面设计器,找到页面属性的「Inline CSS」(或在共享组件里添加CSS文件)
  2. 根据需求添加对应CSS代码:
    • 顶部居中显示:
      .t-Body-alerts {
        top: 20px;
        right: auto;
        left: 50%;
        transform: translateX(-50%);
        max-width: 600px;
      }
      
    • 左下角显示:
      .t-Body-alerts {
        top: auto;
        bottom: 20px;
        right: auto;
        left: 20px;
      }
      
  3. 保存页面后测试,消息位置会按设置生效。

注意:不同APEX版本的消息容器类名可能略有差异,建议先用浏览器开发者工具(F12)查看消息元素的实际类名,再调整CSS选择器。

方法二:自定义消息区域(完全控制位置)

如果需要更灵活的布局,可以放弃默认的g_print_success_message,改用自定义消息组件:

  1. 创建一个隐藏的页面项(比如P1_SUCCESS_MSG),存储消息内容
  2. 在PL/SQL逻辑里,将消息赋值给页面项:
    :P1_SUCCESS_MSG := '操作已成功完成';
    
  3. 在页面布局中添加一个区域,位置随便放(比如页面顶部、表单下方),设置区域默认隐藏,区域内的HTML内容为:
    <div class="t-Alert t-Alert--success" role="alert">#P1_SUCCESS_MSG#</div>
    
  4. 添加动态操作:触发条件设为「页面加载时」或「PL/SQL执行后」,动作为「显示」该区域,还可以加定时器让消息自动隐藏(比如用JavaScriptsetTimeout)。

方法三:修改共享组件的消息模板

在应用的共享组件里自定义消息模板,全局调整所有页面的消息位置:

  1. 进入共享组件 → 其他组件 → 警报模板
  2. 复制默认的「Success Alert」模板,创建自定义模板
  3. 在模板的「CSS」部分添加定位样式,比如:
    .custom-success-alert {
      position: fixed;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      z-index: 9999;
    }
    
  4. 修改模板的HTML部分,把默认的类替换成自定义类
  5. 在页面属性的「警报模板」选项中选择这个自定义模板,所有用g_print_success_message生成的消息都会套用新样式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 15:08:02