起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2504|回复: 2

[结贴] gridSelect组件的Data数据源里的数据发生改变后,下拉内容不变

[复制链接]

851

主题

2560

帖子

5714

积分

论坛元老

Rank: 8Rank: 8

积分
5714
QQ
发表于 2019-11-22 09:31:50 | 显示全部楼层 |阅读模式
gridSelect组件加入了一个filter的过滤条件,当Data数据源里的fStatus关系值发生改变后,下拉里的项数没有变化。
fStatus关系使用的是int类型,初始值是1,后来重新setvalue成0,因为gridSelect里加入了过滤条件,因此不符合过滤条件的项目不应该被显示出来才对呀。
未命名1574386016.png
企业应用定制开发。X5开发者。
手机:15065117236
QQ:87356667

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36069
发表于 2019-11-22 14:50:22 | 显示全部楼层
这个是js表达式,不是只写一个值就可以的,如
$row.val("fName") == $model.mainData.val("fCode")
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

851

主题

2560

帖子

5714

积分

论坛元老

Rank: 8Rank: 8

积分
5714
QQ
 楼主| 发表于 2019-11-23 13:40:10 | 显示全部楼层
jishuang 发表于 2019-11-22 14:50
这个是js表达式,不是只写一个值就可以的,如
$row.val("fName") == $model.mainData.val("fCode") ...

经过测试发现,主要原因不是这个。
gridSelect绑定的数据组件,如果只是组件中的值发生变化,不足以引起gridSeclet组件重构,不要组件不重构,filter里的条件就不会影响到组件的选项数量。
只有当数据组件new 或者remove的时候,才会触发gridSelect组件重构,这时,filter过滤条件才会影响到组件的数量。
根据如上的分析,给出一个巧妙的解决方案。
主动接管数据组件的CustomDelete事件,不需要写任何代码。
在需要重构gridSelect组件的时候,调用一下数据组件里的remove方法 ,就可以达到目的了。



企业应用定制开发。X5开发者。
手机:15065117236
QQ:87356667
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-11-28 16:02 , Processed in 0.068436 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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