无法使用 javascript 禁用字段子网格

Can't disable field subgrid with javascript

我有2个子网格,一个是mid-tid,一个是all-mid-tid。我想禁用 mysubgrid 上的字段,所以在互联网上搜索后我找到了这个脚本

function setGridDisableWO(context) 
{
    context.getFormContext().getData().getEntity().attributes.forEach
    (
        function (attr) 
        {
            var NamaId = attr.getName();
            if(NamaId == "mjt_store" || NamaId == "mjt_pot" || NamaId == "mjt_id" || NamaId == "mjt_partner" || NamaId == "mjt_mid" || NamaId == "mjt_tid" || NamaId == "mjt_status_pot_facility" || NamaId == "createdon" || NamaId == "mjt_facility")
            {
                attr.controls.forEach(function (c) 
                {
                    c.setDisabled(true);
                })
            }
        }
    );
}

这个脚本可以工作,但问题是,它只在我的 all-mid-tid 子网格上工作,在我的其他子网格上它不工作。 当我尝试调试它并设置断点时,它甚至不会在我的断点处停止,两个子网格都具有相同的实体和字段名称 真的很奇怪为什么只有一个在工作,我已经仔细检查我是否拼错了我的函数或我在子网格上的事件 但我没有犯任何错误,这里有什么建议吗?

您为什么不尝试在两个网格中放置相同的 class 名称,并在 javascript 中调用 class 并根据偏好将 Disable 设置为 true 或 False?

所选的 mid-tid 子网格上的事件处理程序配置可能存在问题。您能否再次检查以下内容:

  1. javascript 功能已添加到 "OnRecordSelect" 事件
  2. 已选择具有您的功能的正确库。
  3. 启用已选中。
  4. 检查第一个参数时传递执行上下文。