|
一、问题需求- 在某些特殊情况下,需要将根据列表中某个字段去限制别的字段的状态
二、实现思路
- 通过监听事件,监听某个字段的值,去判断需要改变的字段的状态
三、具体操作
- 注册案例状态字段的值改变事件
- 编写值改变事件代码,根据状态变化隐藏显示展示字段
四、代码实现
- <font face="微软雅黑">function(field, value, eOpts){
- /**
- * 平台提示,不用可以随时删除这段注释.
- * var func = JE.getFunc('功能编码'),//得到功能对象
- * kqtree = func.treeview,//得到快速查询树对象
- * mainRecord = func.getParentData();//得到父亲功能对象
- * var formRecord = func.getFormData();//如果是表单按钮就可以得到本功能表单里的数据
- * var fieldValue = formRecord.fieldCode;
- * var form = func.formview;//得到表单对象,findField(fieldName)找到字段组件
- * var basicForm = form.form;
- */
- //拿到当前form
- var form = field.up("jeformview");
- //拿到展示字段
- var displayfield_1 = form.getFields('displayfield_1');
- //根据状态值进行判断
- if(value != "" && value == '0' ){
- displayfield_1 && displayfield_1.ownerCt.hide();
- }else{
- displayfield_1 && displayfield_1.ownerCt.show();
- }
- }</font>
复制代码 五、拓展内容
以上是对展示字段的隐藏,普通文本字段隐藏只需要以下代码就可以实现
- <font face="微软雅黑">function(field, value, eOpts){
- /**
- * 平台提示,不用可以随时删除这段注释.
- * var func = JE.getFunc('功能编码'),//得到功能对象
- * kqtree = func.treeview,//得到快速查询树对象
- * mainRecord = func.getParentData();//得到父亲功能对象
- * var formRecord = func.getFormData();//如果是表单按钮就可以得到本功能表单里的数据
- * var fieldValue = formRecord.fieldCode;
- * var form = func.formview;//得到表单对象,findField(fieldName)找到字段组件
- * var basicForm = form.form;
- */
- //拿到当前form
- var form = field.up("jeformview");
- //拿到展示字段
- var displayfield_1 = form.getFields('displayfield_1');
- //根据状态值进行判断
- if(value != "" && value == '0' ){
- //隐藏展示字段,以下两种写法都可以实现
- displayfield_1 && displayfield_1.ownerCt.hide();
- // form.getFields('displayfield_1').ownerCt.hide()
- //利用右侧帮助中的fieldHide()方法实现隐藏
- form.fieldHide("CASE_ALCYR");
- //直接找到字段隐藏以下两种写法都可以实现
- // form.form.findField("CASE_ALSM").hide();
- form.getFields("CASE_ALSM").hide();
- }else{
- // 以下两种写法都可以实现
- displayfield_1 && displayfield_1.ownerCt.show();
- // form.getFields('displayfield_1').ownerCt.show()
- //利用右侧帮助中的fieldShow()方法实现展示
- form.fieldShow("CASE_ALCYR");
- //直接找到字段隐藏以下两种写法都可以实现
- // form.form.findField("CASE_ALSM").show();
- form.getFields("CASE_ALSM").show();
- }
- }</font>
复制代码
|
|