JEPaaS 社区

 找回密码
 立即注册
JEPaaS低代码平台-官网
查看: 1896|回复: 0

业务中如何根据状态隐藏展示字段(或显示图片)?

[复制链接]

47

主题

48

帖子

172

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
172
发表于 2021-6-24 17:33:21 | 显示全部楼层 |阅读模式
一、问题需求
  • 在某些特殊情况下,需要将根据列表中某个字段去限制别的字段的状态

二、实现思路
  • 通过监听事件,监听某个字段的值,去判断需要改变的字段的状态
三、具体操作
  • 注册案例状态字段的值改变事件
  • 编写值改变事件代码,根据状态变化隐藏显示展示字段

四、代码实现
  1. <font face="微软雅黑">function(field, value, eOpts){
  2.   /**
  3.   * 平台提示,不用可以随时删除这段注释.
  4.   * var func = JE.getFunc('功能编码'),//得到功能对象
  5.   *     kqtree = func.treeview,//得到快速查询树对象
  6.   *     mainRecord = func.getParentData();//得到父亲功能对象   
  7.   * var formRecord = func.getFormData();//如果是表单按钮就可以得到本功能表单里的数据
  8.   *     var fieldValue = formRecord.fieldCode;
  9.   * var form = func.formview;//得到表单对象,findField(fieldName)找到字段组件
  10.   * var basicForm = form.form;
  11.   */
  12.   //拿到当前form
  13.   var  form = field.up("jeformview");
  14.   //拿到展示字段
  15.   var displayfield_1 = form.getFields('displayfield_1');
  16.   //根据状态值进行判断
  17.   if(value != "" && value == '0' ){
  18.       displayfield_1 && displayfield_1.ownerCt.hide();
  19.   }else{
  20.       displayfield_1 && displayfield_1.ownerCt.show();
  21.   }
  22. }</font>
复制代码
五、拓展内容
以上是对展示字段的隐藏,普通文本字段隐藏只需要以下代码就可以实现
  1. <font face="微软雅黑">function(field, value, eOpts){
  2.   /**
  3.   * 平台提示,不用可以随时删除这段注释.
  4.   * var func = JE.getFunc('功能编码'),//得到功能对象
  5.   *     kqtree = func.treeview,//得到快速查询树对象
  6.   *     mainRecord = func.getParentData();//得到父亲功能对象   
  7.   * var formRecord = func.getFormData();//如果是表单按钮就可以得到本功能表单里的数据
  8.   *     var fieldValue = formRecord.fieldCode;
  9.   * var form = func.formview;//得到表单对象,findField(fieldName)找到字段组件
  10.   * var basicForm = form.form;
  11.   */
  12.   //拿到当前form
  13.   var  form = field.up("jeformview");
  14.   //拿到展示字段
  15.   var displayfield_1 = form.getFields('displayfield_1');
  16.   //根据状态值进行判断
  17.   if(value != "" && value == '0' ){
  18.       //隐藏展示字段,以下两种写法都可以实现
  19.         displayfield_1 && displayfield_1.ownerCt.hide();
  20.       // form.getFields('displayfield_1').ownerCt.hide()
  21.       //利用右侧帮助中的fieldHide()方法实现隐藏
  22.       form.fieldHide("CASE_ALCYR");
  23.       //直接找到字段隐藏以下两种写法都可以实现
  24.       // form.form.findField("CASE_ALSM").hide();
  25.       form.getFields("CASE_ALSM").hide();
  26.   }else{
  27.       // 以下两种写法都可以实现
  28.       displayfield_1 && displayfield_1.ownerCt.show();
  29.       // form.getFields('displayfield_1').ownerCt.show()
  30.       //利用右侧帮助中的fieldShow()方法实现展示
  31.       form.fieldShow("CASE_ALCYR");
  32.       //直接找到字段隐藏以下两种写法都可以实现
  33.       // form.form.findField("CASE_ALSM").show();
  34.       form.getFields("CASE_ALSM").show();
  35.   }
  36. }</font>
复制代码


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|JEPaaS 低代码平台社区 ( 京ICP备18023569号 )

GMT+8, 2024-5-17 12:56 , Processed in 0.056128 second(s), 21 queries .

Powered by 北京凯特伟业科技有限公司

Copyright © 2001-2021, JEPaaS.COM

快速回复 返回顶部 返回列表