保存Interactive Grid后,如何刷新仅显示类型的Page Item?
保存Interactive Grid后刷新只读页面项的实现方法
以下是几种实用的实现方式,根据你的场景选择即可:
方法一:通过自定义事件触发动态动作(最简便)
- 打开页面设计器,记录目标Interactive Grid的静态ID(例如
IG_EMP) - 创建新动态动作:
- 触发类型选择「自定义事件」
- 事件名称填写
apexaftersave - 选择器填写
#IG_EMP(替换为你的IG静态ID) - 动作选择「刷新」
- 刷新目标指定为需要更新的只读页面项(例如
P1_DISPLAY_ONLY) - 保存动态动作即可
方法二:在IG保存后处理中更新并刷新页面项
如果页面项的值需要通过PL/SQL计算生成:
- 进入Interactive Grid的「处理」配置,找到「保存 - 后处理」区域
- 添加PL/SQL代码块,计算并设置页面项的会话状态,示例:
SELECT SUM(SALARY) INTO :P1_TOTAL_SALARY FROM EMP WHERE DEPT_ID = :P1_DEPT; - 接着添加「刷新页面项」操作,指定目标为刚才更新的只读页面项
方法三:JavaScript手动绑定刷新事件(复杂场景适用)
需要更灵活的逻辑控制时,可通过JS绑定IG的保存完成事件:
- 在页面的「JavaScript」属性中,添加页面加载时的事件绑定代码:
$(document).on('apexaftersave', '#IG_EMP', function() { // 刷新指定只读页面项 apex.item('P1_DISPLAY_ONLY').refresh(); }); - 替换代码中的
IG_EMP和P1_DISPLAY_ONLY为实际的组件静态ID
内容的提问来源于stack exchange,提问作者shajin
相关产品推荐
相关产品推荐

