找文章 / 找答案
  • 发帖数12
  • 粉丝0

此人很懒,什么也没有留下

  • 解答问题超厉害

    经常帮助其他会员答疑

选一个下拉框后 另一个下拉框数据清空

显示全部楼层 发表于 2021-8-20 15:23:35 |阅读模式 打印 上一主题 下一主题
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

精彩评论9

显示全部楼层 发表于 2021-8-20 15:35:14
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

显示全部楼层 发表于 2021-8-20 16:06:23
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

显示全部楼层 发表于 2021-8-20 17:11:28
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

显示全部楼层 发表于 2021-8-20 17:44:50
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

永洪tech-wisiy铂金一 显示全部楼层 发表于 2021-8-23 09:55:24
accccc 发表于 2021-8-20 17:44
我这边试了
if  (param["列表参数1"] != null){
列表参数2.setSelectedObjects(null)}

已经是目前最优解
回复

使用道具 举报

美滋滋皇冠三 显示全部楼层 发表于 2021-8-23 10:41:54
本帖最后由 lijie 于 2021-8-23 11:13 编辑

我个人觉得不是点两下的问题,应该进行一个判定,判定到底是哪个复选框发生了变化。
回复

使用道具 举报

52v0铂金二 显示全部楼层 发表于 2021-8-23 10:58:25
本帖最后由 52v0 于 2021-8-23 13:00 编辑

你需要一个值来记录上次的情况  来判断这次的操作  
参考代码
if(!isNull(列表参数1.getSelectedObjects()[0])&&!isNull(列表参数2.getSelectedObjects()[0])){
if(param['last']){
列表参数1.setSelectedObjects([])
}else{
列表参数2.setSelectedObjects([])
}
}

if(isNull(列表参数1.getSelectedObjects()[0])&&isNull(列表参数2.getSelectedObjects()[0])){
param['last']=null
}else{
param['last']=isNull(列表参数2.getSelectedObjects()[0])
}
回复

使用道具 举报

美滋滋皇冠三 显示全部楼层 发表于 2021-8-23 11:12:57
我简单的写了一个脚本,应该可以实现楼主的需求了,具体参照下面的脚本信息!
1. 首先在装载时运行中增加下面脚本
var arry_a_bk = 列表参数1.getSelectedObjects()
var arry_b_bk = 列表参数2.getSelectedObjects()

2. 其次在变化时运行中增加下面脚本
var arry_a = 列表参数1.getSelectedObjects()
var arry_b = 列表参数2.getSelectedObjects()
var i = 0;
var change_flag_a = false;
var change_flag_b = false;
if (arry_a.length == arry_a_bk.length) {
    for (i=0;i<arry_a.length;i++) {
        if (arry_a[i] != arry_a_bk[i]) {
            arry_a_bk = 列表参数1.getSelectedObjects()
            change_flag_a = true
        }
    }
}else{
    arry_a_bk = 列表参数1.getSelectedObjects()
    change_flag_a = true
}

if (change_flag_a) {
    列表参数2.setSelectedObjects(null)
    arry_b_bk = 列表参数2.getSelectedObjects()
}else{
    if (arry_b.length == arry_b_bk.length) {
        for (i=0;i<arry_b.length;i++) {
            if (arry_b[i] != arry_b_bk[i]) {
                arry_b_bk = 列表参数2.getSelectedObjects()
                change_flag_b = true
            }
        }
    }else{
        arry_b_bk = 列表参数2.getSelectedObjects()
        change_flag_b = true
    }
    if (change_flag_b) {
        列表参数1.setSelectedObjects(null)
        arry_a_bk = 列表参数1.getSelectedObjects()
    }
}

这样就可以了。
回复

使用道具 举报

美滋滋皇冠三 显示全部楼层 发表于 2021-8-23 13:09:43
52v0 发表于 2021-8-23 10:58
你需要一个值来记录上次的情况  来判断这次的操作  
参考代码
if(!isNull(列表参数1.getSelectedObjects()[ ...

哇,这段代码的想法很新颖,学习到了!!
回复

使用道具 举报

高级模式
您需要登录后才可以回帖 登录 | 免费注册

  • 官方微信

    欢迎关注永洪服务号!收费为0,价值无限

    扫码关注
  • 新浪微博

    让每位用户轻松挖掘数据价值!

    访问新浪微博
  • 智能客服
50W

会员等你来哦

Copyright   ©2012-2024  北京永洪商智科技有限公司  (京ICP备12050607) 京公网安备110110802011451号 |联系社区管理员|《永洪社区协议》
返回顶部