2011-07-07 44 views
2

我試圖隱藏排序:真,寬度:0,顯示:假的,但我仍然看到在網格中的列。比我試圖jqGrid的隱藏列,並在分組

myGrid.jqGrid( 'hideCol',[ 「類型」]);

問題1:

這是工作和列是隱藏的,但一旦我表現出崩潰行超過此列再次可見。

問題2:

我有groupCollapse:真。當我崩潰並進行排序比所有行再次崩潰。

問題:

摺疊/展開隱藏的列應不可見。

當排序行崩潰。

var myGrid = $('#list'); 
myGrid.jqGrid({ 
    url: '/Admin/DynamicGridData/', 
    datatype: 'json', 
    mtype: 'POST', 
    colNames: ['Id', 'Date', 'First Name', 'Last Name', 'Email Address', 'Hidden'], 
    colModel: [ 

        { name: 'Id', index: 'Id', width: 40, align: "center", editable: false, editoptions: { readonly: true }, key: true, sorttype: "int", searchoptions: { sopt: ['eq', 'ne', 'lt', 'le', 'gt', 'ge']} }, 
        { name: 'DateEdited', index: 'DateEdited', width: 90, sorttype: "date", formatter: "date" }, 
        { name: 'FirstName', index: 'FirstName', width: 120, searchoptions: { sopt: ['eq', 'ne', 'lt', 'le', 'gt', 'ge']} }, 
        { name: 'LastName', index: 'LastName', width: 120, searchoptions: { sopt: ['eq', 'ne', 'lt', 'le', 'gt', 'ge']} }, 
        { name: 'Email', index: 'Email', width: 300, searchoptions: { sopt: ['cn', 'nc', 'bw', 'bn', 'eq', 'ne', 'ew', 'en', 'lt', 'le', 'gt', 'ge']} }, 
        { name: 'Type', index: 'Type', hidden: true, width: 0, display: false, search: false } 

       ], 

    height: 'auto', 
    autowidth: true, 
    rownumbers: true, 

    rowNum: 30, 
    rowList: [10, 20, 30], 
    pager: '#pager', 
    sortname: 'Id', 
    viewrecords: true, 
    sortorder: "asc", 
    multiselect: true, 
    altRows: true, 
    altclass: 'myAltRowClass', 
    caption: "Master Grid", 
    jsonReader: { cell: "" }, 

    grouping: true, 
    groupingView: { groupField: ['Type'], 
     groupColumnShow: [true], 
     groupText: ['<b>{0} - {1} Record(s)</b>'], 
     groupCollapse: false, 
     groupOrder: ['desc'] 
    } 
}); 
myGrid.jqGrid('navGrid', '#pager', { add: false, edit: false, del: true }, {}, {}, 

    { }, 

    { multipleSearch: true, overlay: false }); 

myGrid.jqGrid('filterToolbar', { stringResult: true, searchOnEnter: true, defaultSearch: 'cn' }); 
myGrid.jqGrid('navButtonAdd', '#pager', { caption: "Filter", title: "Toggle Searching Toolbar", buttonicon: 'ui-icon-pin-s', onClickButton: function() { myGrid[0].toggleToolbar(); } }); 
myGrid[0].toggleToolbar(); 
myGrid.jqGrid('hideCol', ["Type"]); 

回答

4

您可以使用任

myGrid.jqGrid('hideCol', "Type"); 

代替myGrid.jqGrid('hideCol', ["Type"]);或使用

groupColumnShow: [false] 

,而不是groupColumnShow: [true],因爲你想隱藏哪個你分組列。

+0

我理解這一點。列被隱藏並且不顯示。但是當我對列進行排序時,崩潰問題又如何呢?排序列時不應該摺疊。任何想法? – Pirzada

+0

@pirzada:在一些動作如分頁,排序,過濾jqGrid重建網格包含,因此應用'groupCollapse:true'。所以這不是一個錯誤。如果您需要保存「摺疊」狀態,您可以在[onPaging](http://www.trirand.com/jqgridwiki/doku.php?id=wiki:pager#events)事件處理程序中執行此操作,並使用'groupingToggle 'loadComplete'內部再次擴展分組。 – Oleg

+0

@Oleg:請參閱[這個問題](http://stackoverflow.com/questions/6939096/hide-grouping-heading-in-jqgrid-if-every-row-inside-it-is-hidden) – abi1964