dblclick上的jqGrid折叠列

时间:2018-08-05 13:17:00

标签: javascript jqgrid resize collapse

在jqGrid中,我需要在dblclick上可调整大小和可折叠的列之一。我设法通过更改列“ resizable:true”并使用下面的代码进行折叠来做到这一点。我的组合存在问题:手动调整大小后-dblcklick起作用了,但是单击了调整大小的下一个单击(将光标悬停在列边框上)-列自动返回到先前手动调整大小的宽度。有什么想法吗?

                    $("#tbCategoryDetail_Notes>span").dblclick(function () {

                    var grid = $("#" + controller.jqElements.QuestionTableId);
                    var id = $(this).parent().attr('id'); // First get the ID of the 'Notes' column for latter use. 
                    var a = grid.jqGrid('getGridParam', 'colModel'); // for Get 'Notes' column width
                    var currentColWidth = (a[6].width); // Notes  column 
                    var MaxTotalWidth = $("#category-detail").width();
                    var currentGrigWidth = ($("#tbCategoryDetail_Question").width() + $("#tbCategoryDetail_Answers").width() + $("#tbCategoryDetail_Points").width() + $("#tbCategoryDetail_Notes").width())

                    // Size to collapse the column.
                    var minColWidth = 100; 
                    // Size to expand the column 
                    var maxColWidth = (MaxTotalWidth - currentGrigWidth + currentColWidth);

                    // Collapse column
                    if (currentColWidth > minColWidth) {
                        var newGridWith = (currentGrigWidth - currentColWidth + minColWidth);
                        grid.jqGrid('setColProp', id, { width: minColWidth }); // Set col width to Min
                        grid.jqGrid('setGridWidth', newGridWith, true);

                    }
                    //Expand column
                    else {

                        grid.jqGrid('setColProp', id, { width: maxColWidth }); // Set col width to max
                        grid.jqGrid('setGridWidth', MaxTotalWidth , true);
                    }
                });

0 个答案:

没有答案