jqgrid常见问题

1,点全选按钮,只能选中当前页,第二页第三页等都不会被选中

方案:全选后,会触发onSelectAll,同时记录所有ID,在翻页时会,在gridComplete(数据变动执行方法)里面写选中代码:

如下:

 

2.选中行,但是不勾选复选框

     beforeSelectRow: function (rowid, e) { //点击单行
                // 选中行,不勾选
                var $myGrid = $(this),
                    i = $.jgrid.getCellIndex($(e.target).closest('td')[0]),
                    cm = $myGrid.jqGrid('getGridParam', 'colModel');
                return (cm[i].name === 'cb');
            }

3.常见的几个事件说明

(1)   gridComplete:   //数据变动执行方法

(2)   onSelectAll: function (aRowids, status) { // 点击全选记录ID   aRowids行ID(只有当前页的ID集合),status 是否选中状态

(3)   beforeSelectRow: function (rowid, e) {//点击单行  rowid:行id  ,e事件

(4)   onSelectRow: function (id, isSelect, event) {  // 选择行后调用(id:行id,isSelect:是否是选中,event:事件)

(5)   loadComplete: function (data) { //数据变动不执行方法,加载的时候执行一次

(6)   ondblClickRow: function (id, rownum, colnum, event) {    // 双击表格行时调用(id:双击的行号,rownum:双击的行位置,column:双击的列)

 4.常用代码

 //选中行 orderIdVal行ID
$("#gridTable1").jqGrid('setSelection', orderIdVal);



// 选中行,不勾选
                var $myGrid = $(this),
                    i = $.jgrid.getCellIndex($(e.target).closest('td')[0]),
                    cm = $myGrid.jqGrid('getGridParam', 'colModel');
                return (cm[i].name === 'cb');


 //getDataIDs()返回当前grid里所有数据的id----当页的
        var pcallIds = $("#gridTable").jqGrid('getDataIDs');
 /总行数
        var allcount = $("#gridTable").getGridParam("records");

  

 

事件和方法说明:https://blog.csdn.net/ibenxiaohai123/article/details/106022630

多选问题参考:https://blog.csdn.net/qq_27203243/article/details/90713699

posted on 2022-07-12 09:56  小乐丶  阅读(179)  评论(0编辑  收藏  举报