返回列表 发布新帖

如何动态配置栏位只读/可编辑?

120 1
发表于 2025-3-17 17:37:00 | 查看全部 阅读模式
问答

紧急程度

已完结

如下图,想实现抛转状态=1已抛收款单 or (抛转状态=2未抛收款单 and 数据源=1银企直联)时,画面上所有栏位都不可编辑,也不可删除;抛转状态=2未抛收款单 and 数据源=0手工导入时,画面上栏位允许编辑,也允许删除,应如何配置实现?

                               
登录/注册后可看大图

最佳答案

查看完整内容

首先选中表格、找到表格hooks 使用gridReadyHook事件(表格已经初始化完成) 然后使用下列代码参考,里面实际的业务判断和业务字段、表格字段需要修改为自己实际的 // 获取表格所有数据 const tableData = component.getAllRowData(); // 获取表格所有行数据 // 遍历每一行数据 tableData.forEach((row, index) => {    //获取表格中指定的判断字段 以下两个字段需要自行修改为应用自己数据源里面的     ...

评论1

翁俊Lv.7 发表于 2025-3-18 15:34:18 | 查看全部

首先选中表格、找到表格hooks
使用gridReadyHook事件(表格已经初始化完成)


2.jpg
然后使用下列代码参考,里面实际的业务判断和业务字段、表格字段需要修改为自己实际的


// 获取表格所有数据
const tableData = component.getAllRowData(); // 获取表格所有行数据
// 遍历每一行数据
tableData.forEach((row, index) => {
   //获取表格中指定的判断字段 以下两个字段需要自行修改为应用自己数据源里面的
   //exampltest为数据源根级的字段,owner_emp_name为具体业务字段:例如抛转状态字段
  const newcomponent = component.getControlByPath(`exampltest.${index}.owner_emp_name`);//从表格实例上面抓取每行需要判断的业务字段,例如示例的员工姓名
   const allConpen = Object.keys(row.value);  //获取表格每行所有单元格组件字段名称
   // 例如拿到表格员工姓名字段,判断该字段值等于xxx,满足条件执行下列逻辑
   if (newcomponent.value === 'xxx') {
      // 获取表格每行中指定字段的值判断
      component.setRowCanBeSelected(row, false); //禁用行选择   
      allConpen.forEach((item) => {
         const allcomponent = component.getControlByPath(`exampltest.${index}.${item}`);//循环获取当前满足条件的行的所有组件
         allcomponent.setDisableState(true); //设置满足条件的单元格禁用状态
      })
   } else {
      //不满足上述条件的恢复编辑和选择
      component.setRowCanBeSelected(row, true);
      allConpen.forEach((item) => {
         const allcomponent = component.getControlByPath(`exampltest.${index}.${item}`);
         allcomponent.setDisableState(false);
      })
   }
});

         最终效果如下图
1742263790538.jpg

1742282792837.jpg
大家来答
    热门讨论
      精选文章
      数据驱动2.0工作流流程变量说明
      在工作流执行的过程中,我们常常需要先取得一些待处理的数据,并在处理后将结果存放起
      互联中台整合请求安全码(digi-key)说明
      互联中台整合请求中有安全码的设计,用来验证整合请求的合法性。安全码的位置说明如下
      数据比对介绍
       一、数据比对介绍(一)业务场景在项目实施中,预算执行率的准确计算依赖于敏态
      Athena 五大驱动力介绍
                    在数字化转型的浪
      开发不踩雷-数据驱动2.0, 模型栏位异动调整时的注意事项
      场景说明我们在应用开发过程中, 模型的异动是非常常见的一般情况的开发顺序为 模型设
      • 关注公众号
      Copyright © 2025 鼎捷数智股份有限公司 版权所有 All Rights Reserved. Powered by Discuz! X5.0
      关灯 在本版发帖
      即将开放
      返回顶部
      快速回复 返回顶部 返回列表