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

Apex交互式网格仅保留两列可编辑,其余设为只读的实现问题

Oracle Apex交互式网格仅指定列可编辑的解决方案

方法1:列属性直接设置(推荐)

  • 打开交互式网格的列属性面板
  • 针对要设为只读的列:
    1. 找到编辑类型,选择只读(别选“仅显示”——这个只是报表视图不显示编辑控件,编辑模式下还是能改)
    2. 留空服务器端条件,确保报表里能看到该列内容
  • 要可编辑的列,把编辑类型设为对应类型(比如文本字段、选择列表)

方法2:通过编辑配置批量设置

  • 进入交互式网格的编辑属性页签
  • 确认允许的操作只保留必要项(比如更新)
  • 点击列子页签,批量配置:
    • 勾选可编辑列的可更新选项
    • 取消其余列的可更新勾选

方法3:JavaScript强制锁定(复杂场景用)

如果上面的方法没生效,加一段页面加载时执行的JS代码:

// 替换成你的交互式网格静态ID
var ig = apex.region("IG_STATIC_ID").widget().interactiveGrid("getViews", "grid");
// 遍历所有列,只让COLUMN1和COLUMN2可编辑
ig.model.getColumns().forEach(function(col) {
    if (col.name !== 'COLUMN1' && col.name !== 'COLUMN2') {
        col.editable = false;
    }
});
ig.viewGrid("refresh");

记得把IG_STATIC_ID换成你的网格静态ID,COLUMN1、COLUMN2换成可编辑列的数据库列名。

解决编辑弹窗的问题

如果点行编辑时弹出的表单里还能改只读列:

  • 打开交互式网格的编辑→表单子页签
  • 找到弹窗里的只读列,把编辑类型设为只读,或者勾选隐藏(不需要显示的话)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 09:48:15