使用列选择器隐藏jqgrid中的行号

时间:2014-09-10 08:45:15

标签: jquery jqgrid

我使用列选择器来隐藏列,但是当iam clikcking隐藏所有列时行号也显示如何隐藏行号,请有人帮我这个,谢谢

这是我的代码:

 $("#list1").jqGrid({
    url:"./controllers/apGetTestData.php?testanzres=1&testsuite="+testsuite+"&testcase="+testcase+"&ch="+ch+,  
    datatype: 'xml', 
    mtype: 'GET', 
    height: 'auto',
    colNames:[ 'RRID', 'Release Tag','Completed Date'],
    colModel:[
             {name:'idreleaseRequest', index:'idreleaseRequest', width:24},
             {name:'releaseRequestTag', index:'releaseRequestTag'},
             {name:'timeStamp', index:'timeStamp'},
             {name:'DateInfo', index:'Date Info', sortable:false,align:'center'}
             ],       
    pager: $('#pager1'), 
    rowNum:6, 
    rowList:[6,12,18,24],
    sortname: 'timeStamp',
    sortorder: "ASC",
    caption:"Test Results",
    shrinkToFit:true,
    autowidth: true,
    viewrecords: true,
    rownumbers:true,
    cloneToTop:true,
    toppager:true
 }).trigger("reloadGrid");
     $("#list1").jqGrid('navGrid', '#pager1',{add: false, edit: false, del: false, search: false,  
          cloneToTop:true,refresh: false});
          $.extend(true, $.ui.multiselect, {
                    locale: {
                        addAll: 'Make all visible',
                        removeAll: 'Hide All',
                        itemsCount: 'Avlialble Columns'
                    }
                });
                $.extend(true, $.jgrid.col, {
                    width: 450,
                    modal: true,
                    msel_opts: {dividerLocation: 0.5},
                    dialog_opts: {
                        minWidth: 470,
                        show: 'blind',
                        hide: 'explode'
                    }
                });
                $("#list1").jqGrid('navButtonAdd',$('#list1')[0].id + '_toppager_left', {
                    caption: "Customize Columns",
                    buttonicon: "ui-icon-calculator",
                    title: "Customize Columns",
                    onClickButton: function () {

                    }
                });
          var topPagerDiv = $(('#list1')[0] .id+ '_toppager')[0];         

          $(('#list1') + "_toppager_center", topPagerDiv).remove(); 
          $(('#list1') + "_toppager_right", topPagerDiv).remove();        

          $("table.ui-jqgrid-htable thead").appendTo("table#list1");
          $("table#list1 thead tr").addClass('floatingHeaderRow');
          $("div.ui-jqgrid-bdiv").width($(window).width()+30);

我正在使用行号真实选项,但是当我点击列选择器中的全部隐藏时我想要隐藏行号

1 个答案:

答案 0 :(得分:2)

您可以将rownumbers: true创建的列“rn”包含在columnChooser可见的列列表中,执行

$("#list1").jqGrid("setColProp", "rn", {hidedlg: false});

但你创造了其他问题的方式。列“rn”是特殊列,您不应该移动到另一个位置。

如果您需要隐藏整个网格,我建议您使用

$("#list1").closest(".ui-jqgrid").hide();

并通过

显示
$("#list1").closest(".ui-jqgrid").show();

如果您需要隐藏或仅显示"rn"列,则可以使用showCol / hideCol。例如

$("#list1").jqGrid("hideCol", "rn");