jqgrid 翻页记录选中行

简单的jqgrid列表

$("#list").jqGrid({
        url:contextPath + "/getList",
        postData: data,
        datatype:"json", 
        colNames : [ '用户名','密码'],
        colModel : [ {
            name : 'name',
            index : 'name',
            align : 'center'
        }, {
            name : 'psw',
            index : 'psw',
            align : 'center'
        }],
        rownumbers : true,
        viewrecords : true,
        multiselect : true,
        rowNum : 20,
        pager : $('#gridPager')
    });

 

 分页后每次翻页都会丢掉之前选中行的记录

设置全局变量

var SelectList = []//(用于记录被选中的行)

 

onSelectAll: function (aRowids, status) {
    if (status) {
        for (var i = 0; i < aRowids.length; i++) {
            if (SelectList.indexOf(aRowids[i]) == -1) {//每一次勾选时,检查该行是否在SelectList中,
                //若在,则在SelectList中删除该记录
                //(翻页也会触发onselect事件,所以需检查该行是否在unselects中)
                SelectList.push(aRowids[i]);
            }
        }
    } else {
        for (var i = 0; i < aRowids.length; i++) {
            if (SelectList.indexOf(aRowids[i]) > -1) {//每一次勾选时,检查该行是否在SelectList中,
                //若在,则在SelectList中删除该记录
                //(翻页也会触发onselect事件,所以需检查该行是否在unselects中)
                SelectList.splice($.inArray(aRowids[i], SelectList), 1)
            }
        }
    }
},
gridComplete: function () {
    var ids = $("#grid-table").jqGrid('getDataIDs');
    for (var i = 0; i < ids.length; i++) {
        if ((SelectList.indexOf(ids[i]) > -1)) {
            $("#grid-table").jqGrid('setSelection', ids[i]);
        }
    }
},
onSelectRow: function (rowid, status) {
    if (status) { // 每一次取消选中时,将该行id添加到SelectList中
        if (SelectList.indexOf(rowid) == -1) {//每一次勾选时,检查该行是否在SelectList中,
            //若在,则在SelectList中删除该记录
            //(翻页也会触发onselect事件,所以需检查该行是否在unselects中)
            SelectList.push(rowid);
        }
    } else {
        if (SelectList.indexOf(rowid) > -1) {//每一次勾选时,检查该行是否在SelectList中,
            //若在,则在SelectList中删除该记录
            //(翻页也会触发onselect事件,所以需检查该行是否在unselects中)
            SelectList.splice($.inArray(rowid, SelectList), 1)
        }
    }
},

 

posted @ 2017-09-22 13:15  听雨的人  阅读(1524)  评论(0编辑  收藏  举报