2012-02-27 107 views
0

jqgrid hideCol方法似乎不反映在頁腳中。 即說我有列A B和C,如果我用hideCol方法隱藏B,那麼頁腳得到不正確的頁腳B不會隱藏。 我在這裏錯過了什麼,或者它不被支持?我找不到任何關於footer的hideCol。jqgrid hideCol不隱藏頁腳列

給出不起作用的示例代碼 我拿了樣本JqGrid Samples添加了一個頁腳,然後在名稱列上做了隱藏。這裏頁腳沒有隱藏相應的列。

var mydata = [ 
    { id: "1", invdate: "2010-05-24", name: "test", note: "note", tax: "10.00", total: "2111.00" }, 
    { id: "2", invdate: "2010-05-25", name: "test1", note: "note2", tax: "20.00", total: "320.00" }, 
    { id: "3", invdate: "2007-09-01", name: "test1", note: "note3", tax: "30.00", total: "430.00" }, 
    { id: "4", invdate: "2007-10-04", name: "test", note: "note", tax: "10.00", total: "210.00" }, 
    { id: "5", invdate: "2007-10-05", name: "test2", note: "note2", tax: "20.00", total: "320.00" }, 
    { id: "6", invdate: "2007-09-06", name: "test3", note: "note3", tax: "30.00", total: "430.00" }, 
    { id: "7", invdate: "2007-10-04", name: "test", note: "note", tax: "10.00", total: "210.00" }, 
    { id: "8", invdate: "2007-10-03", name: "test2", note: "note2", amount: "300.00", tax: "21.00", total: "320.00" }, 
    { id: "9", invdate: "2007-09-01", name: "test3", note: "note3", amount: "400.00", tax: "30.00", total: "430.00" }, 
    { id: "11", invdate: "2007-10-01", name: "test", note: "note", amount: "200.00", tax: "10.00", total: "210.00" }, 
    { id: "12", invdate: "2007-10-02", name: "test2", note: "note2", amount: "300.00", tax: "20.00", total: "320.00" }, 
    { id: "13", invdate: "2007-09-01", name: "test3", note: "note3", amount: "400.00", tax: "30.00", total: "430.00" }, 
    { id: "14", invdate: "2007-10-04", name: "test", note: "note", amount: "200.00", tax: "10.00", total: "210.00" }, 
    { id: "15", invdate: "2007-10-05", name: "test2", note: "note2", amount: "300.00", tax: "20.00", total: "320.00" }, 
    { id: "16", invdate: "2007-09-06", name: "test3", note: "note3", amount: "400.00", tax: "30.00", total: "430.00" }, 
    { id: "17", invdate: "2007-10-04", name: "test", note: "note", amount: "200.00", tax: "10.00", total: "210.00" }, 
    { id: "18", invdate: "2007-10-03", name: "test2", note: "note2", amount: "300.00", tax: "20.00", total: "320.00" }, 
    { id: "19", invdate: "2007-09-01", name: "test3", note: "note3", amount: "400.00", tax: "30.00", total: "430.00" }, 
    { id: "21", invdate: "2007-10-01", name: "test", note: "note", amount: "200.00", tax: "10.00", total: "210.00" }, 
    { id: "22", invdate: "2007-10-02", name: "test2", note: "note2", amount: "300.00", tax: "20.00", total: "320.00" }, 
    { id: "23", invdate: "2007-09-01", name: "test3", note: "note3", amount: "400.00", tax: "30.00", total: "430.00" }, 
    { id: "24", invdate: "2007-10-04", name: "test", note: "note", amount: "200.00", tax: "10.00", total: "210.00" }, 
    { id: "25", invdate: "2007-10-05", name: "test2", note: "note2", amount: "300.00", tax: "20.00", total: "320.00" }, 
    { id: "26", invdate: "2007-09-06", name: "test3", note: "note3", amount: "400.00", tax: "30.00", total: "430.00" }, 
    { id: "27", invdate: "2007-10-04", name: "test", note: "note", amount: "200.00", tax: "10.00", total: "210.00" }, 
    { id: "28", invdate: "2007-10-03", name: "test2", note: "note2", amount: "300.00", tax: "20.00", total: "320.00" }, 
    { id: "29", invdate: "2007-09-01", name: "test3", note: "note3", amount: "400.00", tax: "30.00", total: "430.00" } 
]; 
function drawGrid() { 
    jQuery("#list482").jqGrid({ 
     onSortCol: function (index, columnIndex, sortOrder) { 
      alert(index + ' ' + columnIndex + ' ' + sortOrder); 
      return 'stop'; 
     }, 
     data: mydata, 
     datatype: "local", 
     height: 'auto', 
     rowNum: 30, 
     sortable: true, 
     rowList: [10, 20, 30], 
     colNames: ['Inv No', 'Date', 'Client', 'Amount', 'Tax', 'Total', 'Notes'], 
     colModel: [ 
    { name: 'id', index: 'id', width: 60, sorttype: "int" }, 
    { name: 'invdate', index: 'invdate', width: 90, sorttype: "date", formatter: "date" }, 
    { name: 'name', width: 100, editable: true }, 
    { name: 'amount', index: 'amount', width: 80, align: "right", sorttype: "float", formatter: "number", editable: true }, 
    { name: 'tax', index: 'tax', width: 80, align: "right", sorttype: "float", editable: true }, 
    { name: 'total', index: 'total', width: 80, align: "right", sorttype: "float" }, 
    { name: 'note', index: 'note', width: 150, sortable: false } 
], 
     viewrecords: true, 
     grouping: false, 
     groupingView: { 
      groupField: ['name'], 
      groupColumnShow: [true], 
      groupText: ['<b>{0} - {1} Item(s)</b>'] 
     }, 
     footerrow: true, 
     caption: "Hide Grouping Column", 
     onCellSelect: function() { alert('focus'); } 
    }); 
    var grid = jQuery("#list482"); 
    var col = 0; 
    for (var row = 0; row < mydata.length; row++) { 
     grid.addRowData(row + 1, { id: '' }); 
     grid.setCell(row + 1, col, mydata[row].id); 
     grid.setCell(row + 1, col + 1, mydata[row].invdate); 
     grid.setCell(row + 1, col + 2, mydata[row].name); 
     grid.setCell(row + 1, col + 3, mydata[row].amount); 
     grid.setCell(row + 1, col + 4, mydata[row].tax); 
     grid.setCell(row + 1, col + 5, mydata[row].total); 
     grid.setCell(row + 1, col + 6, mydata[row].note); 
    } 
    grid.footerData('set', { amount: 2000, tax: 5000, total: 90000 }); 
    grid.hideCol(['name']); 
    grid.trigger("reloadGrid"); 
} 
$(document).ready(function() { 
    drawGrid(); 
}); 
+1

'hideCol'也應該隱藏頁腳行中的相應列(參見[行](https://github.com/tonytomov/jqGrid/blob/v4.3.1/js/grid.base.js#L2973 )的代碼)。如果你有一個不適用的例子,你應該發佈相應的演示。 – Oleg 2012-02-27 15:28:18

+0

感謝您指出這一點。我會試着看看我的代碼在哪裏搞亂了事情。 – Sarath 2012-02-27 16:12:52

+0

不客氣!在任何情況下,如果你懷疑你發現了一個bug,你應該發佈完整的代碼來重現問題。 – Oleg 2012-02-27 16:19:26

回答

0

從4.1升級jqgrid到4.3.1之後,這個問題似乎是固定的。 感謝您的所有時間。