jQuery MiniUI

标题: datagrid select ( row )和setSelected ( row )都不起作用 [打印本页]

作者: sunny_zhang    时间: 2013-8-13 18:27:38     标题: datagrid select ( row )和setSelected ( row )都不起作用

datagrid select ( row )和setSelected ( row )两个方法有什么却别,怎么都不起作用。

我的代码
var row = grid1.getRow(0);
if(row!=null) grid1.select(row);


或者

var row = grid1.getRow(0);
if(row!=null) grid1.setSelected(row);

都不会选中第一行?

作者: factory    时间: 2013-8-13 22:43:58

你是不是这样写的
grid.load()
grid.select(row)?

这样的话是不对的,因为datagrid是异步加载的
你在load()的回调里select()

grid.load(null,function(){
    grid.select(0);
})
作者: sunny_zhang    时间: 2013-8-14 18:19:25

factory 发表于 2013-8-13 22:43
你是不是这样写的
grid.load()
grid.select(row)?

好,谢谢,我试下
作者: z3278282    时间: 2013-9-3 10:40:00

本帖最后由 z3278282 于 2013-9-3 10:41 编辑
factory 发表于 2013-8-13 22:43
你是不是这样写的
grid.load()
grid.select(row)?

我发现我在使用grid.select时,一旦翻页就选择不到相应的行了,代码如下;(版本为V3.0)
var grid = mini.get("datagrid1");
var selectMAP ={} ;//都为全局变量
    function bc(){
            var rows = grid.getSelecteds();
            selectMAP[grid.getPageIndex()]=rows;
    }

    function gx(){
            var rows = selectMAP[grid.getPageIndex()];
            grid.selects(rows);
    }
作者: factory    时间: 2013-9-3 15:44:52

z3278282 发表于 2013-9-3 10:40
我发现我在使用grid.select时,一旦翻页就选择不到相应的行了,代码如下;(版本为V3.0)
var grid = mini ...

保存的时候,把当前选中数据所属的页码也一起放进去

设置选中的时候,监听grid的onload事件
然后根据当前页码,去变量中获取这一页码中的存放的行数据,然后设置选中
var rows = selectMaps[grid.getPageIndex()];
if(rows) grid.selects(rows);
作者: liunian    时间: 2013-9-3 16:01:25

factory 发表于 2013-9-3 15:44
保存的时候,把当前选中数据所属的页码也一起放进去

设置选中的时候,监听grid的onload事件

这样子也不行,对照dome写的,一个都不选中
作者: factory    时间: 2013-9-3 17:34:59

liunian 发表于 2013-9-3 16:01
这样子也不行,对照dome写的,一个都不选中

[attach]2734[/attach]你看下这个页面
作者: gongbinglai    时间: 2014-6-4 13:40:41

我在使用grid.select时,一旦翻页就选择不到相应的行了,onload事件也监听了,版本为3.0

作者: felt    时间: 2014-6-4 13:46:20

gongbinglai 发表于 2014-6-4 13:40
我在使用grid.select时,一旦翻页就选择不到相应的行了,onload事件也监听了,版本为3.0
...

跨页选中,请参考这个demo
http://www.miniui.com/demo/#src=buttonedit/selectGrid_Multi3.html
作者: gongbinglai    时间: 2014-6-4 13:58:25

felt 发表于 2014-6-4 13:46
跨页选中,请参考这个demo
http://www.miniui.com/demo/#src=buttonedit/selectGrid_Multi3.html ...

我是按照例子来的,但是翻页的时候就是选不中 function onGridLoad(e) {

        var rows = selectMaps[grid.getPageIndex()];
        if(rows) {
                grid.selects(rows)
        }
    }
   
    //当选中改变时需要将当前页选中记录放入到selectMaps
    function onSelectoinChanged(e) {
        var rows = grid.getSelecteds();
        selectMaps[grid.getPageIndex()] = rows;
    }
作者: felt    时间: 2014-6-4 14:18:34

gongbinglai 发表于 2014-6-4 13:58
我是按照例子来的,但是翻页的时候就是选不中 function onGridLoad(e) {

        var rows = selectMaps ...

那你对比一下和我们demo有什么不一样的地方,有什么影响了选中
作者: gongbinglai    时间: 2014-6-5 17:24:47

对比了下,没发现什么不一样的
作者: felt    时间: 2014-6-5 17:26:31

gongbinglai 发表于 2014-6-5 17:24
对比了下,没发现什么不一样的

做个重现的html页面,打包上来我们看看




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