jQuery MiniUI

标题: 跨页多选选择表格如何默认选中某些行 [打印本页]

作者: dengry518    时间: 2019-1-26 11:40:58     标题: 跨页多选选择表格如何默认选中某些行

跨页多选选择表格如何默认选中某些行

作者: felt    时间: 2019-1-28 09:44:44

httf//www.miniui.com/demo/#src=datagrid/pageselection.html
使用这个跨页多选插件
grid.on("load",function(e){
    var rows=grid.findRows(function(row){   //找到你要默认选中的行
              if(row.xxx=="..."){
                   return true;
              }
    })
    grid.selects(rows);
})
作者: dengry518    时间: 2019-1-29 12:06:14

felt 发表于 2019-1-28 09:44
httf//www.miniui.com/demo/#src=datagrid/pageselection.html
使用这个跨页多选插件
grid.on("load",funct ...

[attach]11935[/attach]
目前我想实现如上功能,左测树叶子节点下有些资源项目,
我的做法是这样
1.在叶子节点右键菜单
[attach]11936[/attach]
2.弹出多选表格
[attach]11937[/attach]
一般情况没有问题,但是这种情况有问题:比如现在共有5项
[attach]11940[/attach]
右键菜单弹出多选表格,默认选中分在第2页,第4页,都挺好,但假如我在第2页选择了其他项,比如
[attach]11941[/attach]
按理说有6个资源项被选中,可结果是:
[attach]11942[/attach]
也就是第4页先前选中的都没了。。。。这是为啥呢 ?


作者: dengry518    时间: 2019-1-29 12:18:27

dengry518 发表于 2019-1-29 12:06
目前我想实现如上功能,左测树叶子节点下有些资源项目,
我的做法是这样
1.在叶子节点右键菜单

晕,上传的图片就最后一张,说下情况,现在是这样,我叶子节点右键,弹出多选表格,默认选中没有问题,问题是如果默认选中分在2页,比如第2页,第4页,然后我在第2页在添加一项,结果第4页选中的就没有了
作者: dengry518    时间: 2019-1-29 12:21:12

dengry518 发表于 2019-1-29 12:18
晕,上传的图片就最后一张,说下情况,现在是这样,我叶子节点右键,弹出多选表格,默认选中没有问题,问 ...
这个是我默认选中代码,update换load好像也不行:
function SetData(data) {
        data = mini.clone(data);
        $.ajax({
            url: "/node/getResIdes",
            data: {'nodeId': data},
            type: "post",
            success: function (d) {
                var resIds = d.split(',');
                grid.on("update", function (e) {
                    $.each(resIds,function (i,n) {
                        var rows = grid.findRows(function (row) {
                            if (row.id == n) {
                                return true;
                            }
                        });
                        grid.selects(rows);
                    })
                });
            }
        });
    }
作者: felt    时间: 2019-1-29 15:38:56

dengry518 发表于 2019-1-29 12:21
这个是我默认选中代码,update换load好像也不行:
function SetData(data) {
        data = mini.clone(da ...

你这代码是异步绑定事件,为什么要跑这each
作者: dengry518    时间: 2019-1-29 16:31:57

felt 发表于 2019-1-29 15:38
你这代码是异步绑定事件,为什么要跑这each

这里好像没有问题,我这个是根据当前节点去后台查询该节点下的资源ID,有多个,是我的业务,resIds是个数组,遍历数组而已
作者: felt    时间: 2019-1-29 16:51:10

dengry518 发表于 2019-1-29 16:31
这里好像没有问题,我这个是根据当前节点去后台查询该节点下的资源ID,有多个,是我的业务,resIds是个数 ...

这代码逻辑都有问题,没找到不就执行selects([])去掉原来的选中了?
作者: dengry518    时间: 2019-1-29 17:08:09

felt 发表于 2019-1-29 16:51
这代码逻辑都有问题,没找到不就执行selects([])去掉原来的选中了?

[attach]11945[/attach][attach]11946[/attach][attach]11947[/attach][attach]11948[/attach]

作者: dengry518    时间: 2019-1-29 17:12:41

dengry518 发表于 2019-1-29 17:08

[attach]11949[/attach]这是最开始

作者: dengry518    时间: 2019-1-29 17:14:00

dengry518 发表于 2019-1-29 17:12
这是最开始

[attach]11950[/attach]右键

作者: dengry518    时间: 2019-1-29 17:16:51

dengry518 发表于 2019-1-29 17:14
右键

[attach]11951[/attach]

作者: dengry518    时间: 2019-1-29 17:17:39

dengry518 发表于 2019-1-29 17:16

[attach]11952[/attach]

作者: dengry518    时间: 2019-1-29 17:19:13

dengry518 发表于 2019-1-29 17:17

默认选中没有问题啊
作者: felt    时间: 2019-1-29 18:15:04

dengry518 发表于 2019-1-29 17:19
默认选中没有问题啊

你这是个异步的ajax,不知道你第一次触发是什么时候,而且你这里只是绑定事件,看不出来你什么时候触发的事件。
请直接做一个完整的示例来重现问题。
作者: dengry518    时间: 2019-1-30 12:21:47

felt 发表于 2019-1-29 18:15
你这是个异步的ajax,不知道你第一次触发是什么时候,而且你这里只是绑定事件,看不出来你什么时候触发的 ...

不好再现,牵涉到后台,你们这个例子
http://www.miniui.com/demo/#src=buttonedit/selectGrid_Multi3.html能不能再增强一下,[attach]11954[/attach]数据选回来后,再点,该数据对应的行在多选表格中默认选中就成
作者: felt    时间: 2019-1-30 14:38:43

dengry518 发表于 2019-1-30 12:21
不好再现,牵涉到后台,你们这个例子
http://www.miniui.com/demo/#src=buttonedit/selectGrid_Multi3.ht ...

这示例并没有做这功能,你可以自己实现,参考我上传的例子

[attach]11956[/attach][attach]11955[/attach]
你前面的问题就是逻辑问题,调用了太多次的selects,导致原先选中的又取消了




欢迎光临 jQuery MiniUI (http://miniui.com/discuss/) Powered by Discuz! X2