zoukankan      html  css  js  c++  java
  • 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)
            }
        }
    },
  • 相关阅读:
    使用slot-scope复制vue中slot内容
    pre-commit钩子,代码质量检查
    vue 顶级组件
    Vue源码探究-事件系统
    vue 配置多页面应用
    vuex commit保存数据技巧
    在VUE中,关于CKEditor使用
    使用el-checkbox实现全选,点击失效没有反应
    vue组件之间的通信
    不做Next,争做Nest——庆科首届智能硬件创新设计大赛产生决赛12强
  • 原文地址:https://www.cnblogs.com/GoCircle/p/7574382.html
Copyright © 2011-2022 走看看