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

如何对Dynamic Action Confirm弹窗的页项转义文本进行Unescape处理?

解决方法

针对Oracle APEX中动态动作Confirm弹窗的页项HTML内容被转义的问题,有两种可落地的方案:

方案1:改用自定义JS实现确认逻辑(推荐,安全性更高)

原生Confirm动态动作默认会对替换符引用的内容做转义,你可以直接替换成JS代码手动解码:

  • 删除原有类型为「Confirm」的动态动作,新增一个「执行JavaScript代码」类型的动态动作
  • 写入以下代码:
// HTML实体解码方法
function decodeHtml(html) {
    const tempEle = document.createElement('textarea');
    tempEle.innerHTML = html;
    return tempEle.value;
}
// 获取页项值并解码
const confirmMsg = decodeHtml(apex.items.P1_MESSAGE.getValue());
// 弹出确认框,根据选择执行后续逻辑
if (confirm(confirmMsg)) {
    // 确认后要执行的操作示例:提交页面/触发其他动态动作
    apex.submit('YOUR_REQUEST');
    // 如果后续还要跑原有绑定在Confirm之后的动作,可以先给一个隐藏页项赋值,后续动作加对应判断条件即可
}

方案2:修改页项安全配置(仅适用于页项内容完全可控的场景)

如果你的P1_MESSAGE内容完全由系统生成、没有用户输入的内容,可以直接关闭页项的转义开关:

  • 打开页项P1_MESSAGE的属性面板,找到「安全」分类
  • 取消勾选「转义特殊字符」保存即可
    注意:该方案存在XSS注入风险,若页项值允许用户自定义不要使用

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 08:36:07